본문 바로가기
programming/Tutorials

웹자동화 반복적인 웹페이지 작업을 컴퓨터에 맡기고 자동화한다.

by 개코 - 개발과 코딩 2023. 6. 26.

웹자동화는 웹페이지 자동화라고 하고 영어로는 web automation 이라 한다. 반복적인 웹브라우저에서 하는 일을 컴퓨터에 맡기고 사람은 다른 일에 집중할 수 있는 괜찮은 방법론이다. 웹자동화의 1차적인 목적은 업무의 자동화로 편의성을 높이는데 있지만, 크롤링 또는 스크래핑과 같은 데이터 수집을 웹자동화로 하는 경우라면 법적인 문제까지 부딪힐 수 있다.

웹자동화란
반복적인 웹페이지 작업을 컴퓨터에 맡기고 자동화한다.

겪어보지 못했지만 웹페이지를 이용해 매일 동일한 반복적인 작업을 하는 사람들이 많다.

새로운 것도 아니고 반복적이다보니 사람 입장에서는 지루하고 나르시즘에 빠지기도 한다.

금방 익숙해지기 때문에 재미도 없고 말이다.

하지만, 이런 반복적인 작업은 다른 결과물을 도출하기 위한 기본적인 작업이며, 데이터 수집 또는 마이닝이라 하여 기본이 되는 작업이 되다.

안할 수도 없고 귀찮기만 하다.

그렇기에 웹페이지 자동화가 관심을 받고 있고, IT 업체들마다 제품을 개발하고 있기도 하다.

물론, 커스터마이징을 하기도 한다.

웹페이지 자동화

웹페이지 자동화 또는 웹자동화는 웹에서 행해지는 반복적인 작업을 컴퓨터에 대신 처리하도록 하는 프로그램을 말한다.

매크로와 비슷한 역할을 하며 컴퓨터가 자동으로 이런 일을 반복한다.

반복적인 일은 사람이 작업을 지정하여 컴퓨터가 동작하도록 하는 것이기에 매크로에 가깝다.

이런 기술들은 의외로 가까운 곳에 있고 생각지도 못한 곳에 있다. 물론, 본인도 조금 경험해 봤지만 익숙해 지는 것이 조금은 버거웠다.

개발자 비개발자 모두 웹자동화를 위해 익힐 수 있는 것이 엑셀이다.

엑셀의 기능은 의외로 강력하고 검색해보면 다양한 웹페이지 자동화를 하고 있는 것을 볼 수 있다.

개발의 영역에서는 파이썬, C#, VBA 등의 언어를 사용할 수 있고 Selenium, Chronium 등과 같은 웹드라이버를 사용하여 웹페이지 자동화를 사용할 수 있다.

참고로 웹자동화와 관련된 키워드가 있다면 웹페이지자동화, web automation, web macro, RPA 등이 있다.

한글보다는 영어로 검색하면 정말이지 기상천외한 웹자동화 기술들을 볼 수 있고, 엑셀로 어디까지 자동화가 가능한지 가늠해 볼 수 있다.

사용되는 기술

웹자동화에 가장 많이 사용되는 기술은 파이썬과 셀레니움이다.

파이썬 프로그램 특성상 배우기 쉽고 적용하기 빠르기에 비개발자들도 많이 사용한다.

셀레니움은 웹브라우저를 자동화를 위한 오픈소스 라이브러리이다.

배우기 쉬운 파이썬과 오픈소스 기반의 셀레니움이 만나 폭발적인 웹페이지 자동화 툴들이 나오기 시작했다.

그리고 엑셀로도 웹자동화가 가능하기 때문에 개발자는 아니지만 엑셀을 잘 다루는 사람들도 제작이 가능하다.

어쩌면 엑셀로 웹자동화툴을 만드는 것이 여러모로 더 유익할지도 모르는 것

법적인 문제

웹자동화를 하는 목적이 무엇일까?

당연히 데이터의 검색과 수집이 1차목적이 아닐까 한다.

그렇다보니 당연히 크롤링 또는 스크래핑 이란 기술이 들어가고 웹페이지의 버튼 클릭과 함께 입력값을 설정하는 부분까지 여러가지 자동화를 하고 있기도 하다.

하지만, 이런 기술도 좋지만 웹사이트를 운영하는 입장에서는 좋게 보지 않는다.

이런 웹사이트 운영자들은 웹자동화 프로그램들의 방문을 막거나 방어하는데도 신경쓰고 있다.

또는, 데이터 수집에 대한 경고문을 웹페이지의 잘 보이는 곳에 노출하기도 한다.

웹자동화의 긍정적인 부분도 있지만, 웹사이트 운영자의 경우 의미없는 무분별한 트래픽 유발에 민감할 수 있다.

민감한 웹사이트 운영자의 경우 보안툴을 이용하여 웹자동화를 방어하는 경우들도 있으니 조심하도록 하자.

자칫 이런 문제는 법적인 문제나 저작권 침해의 사유가 되기도 한다.

그렇다면, 네이버나 다음, 구글 또는 다른 포털사이트가 가만히 있는 이유는 무엇일까?

하지 못하는 것이 아니라 하지 않는다는 관점이 정확할 수도 있다.

반응형

댓글