콘솔워크

1. 왕초보를 위한 파이썬 웹 자동화 프로그램 - 개요 본문

왕초보를 위한 파이썬 자동화 프로그램 만들기/1. 개요

1. 왕초보를 위한 파이썬 웹 자동화 프로그램 - 개요

콘솔워크 2024. 2. 12. 11:46
반응형

1. 왕초보를 위한 파이썬 웹 자동화 프로그램 - 개요

 
글쓰기에 앞서

 

안녕하세요. 저는 크몽에서 RPA고수로 활동하고 있고, 현재는 업무자동화 프로그램 전문 개발업체 콘솔워크를 운영하고 있는 김범관입니다.

 

시중에는 파이썬을 활용하여 자동화 프로그램을 만드는 방법을 알려주는 책들이 많이 있습니다. 다행히 최근 트렌드는 이론중심이 아닌 실무를 중심으로 설명되어 있는 책들이 많아 초보자들도 쉽게 따라 할 수 있도록 되어있습니다. 저 또한 이론보다는 실무를 경험하면서 이론을 학습하는 것을 선호합니다.

 

하지만 이 책들을 보면서 아쉬운 점이 있었습니다.

실제로 자동화 개발에 필요한 핵심기술은 2가지 입니다. 하지만 시중의 책에는 이 두 가지 개념에 대한 설명이 부족하고 또 이 핵심 기술을 제대로 사용하지 않고 그저 동작이 되기만 하는 코드들로 예제들이 만들어져 있기 때문입니다.

 

한 번 동작만 되는 프로그램은 빠르고 편하게 만들 수는 있지만 자동화 대상이 되는 웹 사이트가 조금이라도 바뀌면 그 코드는 사용하기 어려워지기 쉽습니다. 한마디로 1회용 프로그램이 되는 것입니다.

 

저는 그동안 크고 작은 자동화 프로그램을 500여 개 만들었고, 실제로 상업적으로 판매한 프로그램은 130개가 있습니다.

실제로 실무에서 필요한 내용인 핵심기술 2가지에 포커스를 맞춰 예제들을 구성하고 설명드릴 예정입니다.

 

이 핵심기술 2가지만 여러분들이 장착하고 있다면 누구든지 쉽게 자동화 프로그램 제작이 가능합니다.

 

 

웹 자동화 프로그램 제작의 핵심 2가지

1. 셀렉터

2. 엑셀데이터 다루기

 

 

1.1 셀렉터란

쉽게 설명할 것이라고 하면서 벌써부터 용어가 어려우시죠? 하지만 다른 말로 마땅히 대체할 말이 없어 "셀렉터"라는 용어를 사용했습니다.

 

그렇다면 "셀렉터"가 무엇이냐. 이것은 컴퓨터에게 어느 대상을 선택할 것인지 알려주는 것입니다. 

 

영수에게 "너 앞에 있는 파란색 컵"을 나에게 가져다 줄래? 이런 부탁을 했다고 합시다.

여기서 " 너 앞에 있는 파란색 컵"이 바로 셀렉터입니다.

셀렉터 예시

 

셀렉터를 다른 말로 표현하면 화면에 보이는 특정 대상의 주소입니다.

 

자동화 프로그램제작에는 이 "주소"를 잘 선택하는 것이 매우 중요합니다. 물론 셀렉터는 다양한 방법으로 표현할 수도 있습니다.

 

"오른손 앞에 있는 파란색 컵"

"가방 왼쪽에 있는 컵"

"공책 바로 아래 있는 컵"

 

등등 컵의 위치(주소)를 설명할 수 있는 셀렉터는 여러가지가 있습니다. 

 

하지만, 셀렉터는 항상 옳은 것은 아닙니다.

셀렉터로 "가방 왼쪽에 있는 컵"이라고 했는데, 가방 주인이 가방을 가지고 갔다고 해봅시다.  그러면 "가방 왼쪽에 있는 컵" 이라는 설명은 이제 더 이상 유효하지 않습니다.

 

 

자동화 프로그램을 제작할 때도 위와 비슷한 일이 벌어집니다.

파란색 버튼 옆에 있는 빨간색 버튼을 클릭하라고 셀렉터를 잡았다면, 사이트가 개편되어 버튼의 순서가 바뀌거나 버튼의 색깔이 바뀌면 해당 셀렉터는 더 이상 유효하지 않는 것입니다.

 

 

그래서 셀렉터잡는 여러 방법을 잘 배우고, 그중에서 오랜 시간 동안 유효할 수 있는 셀렉터를 잡는 것이 자동화 프로그램제작의 핵심입니다.

 

 

1.2 엑셀 데이터 다루기

 

데이터를 다루는 방법은 여러 가지가 있지만, 대중적으로 많이 사용하는 엑셀을 사용할 것입니다.

엑셀에 데이터를 불러오고, 저장하는 방법을 알면 이를 응용하여 다양한 자동화 프로그램 제작이 가능합니다.

 

예를 들어, 네이버 증권 사이트에서 인기 주식 데이터의 정보를 수집하려고 합니다.

네이버 증권 인기종목 (크롤링 대상)

 

사이트에 표시된 정보 중 원하는 정보만 가지고 와서 다음과 같이 엑셀 형식의 데이터로 저장할 수 있습니다.

엑셀 데이터 저장 예시

 

 

 

결론

자동화 프로그램 제작에 필요한 핵심 두 가지는 셀렉터와 엑셀데이터 다루기입니다. 이 두가지 기술만 반복해서 익히시다 보면 다양한 분야에서 활용 가능하십니다.

 

셀렉터잡기는 selenium이라는 라이브러리를 사용하고, 엑셀 데이터 다루기는  pandas와 openpyxl 라이브러리를 활용한 방법을 주로 소개해드릴 예정입니다.

 

추가 문의사항 있으시면 댓글 남겨주시면, 순차적으로 답변드리겠습니다.

 

글 읽어주셔서 감사합니다.

 

 

크몽링크

https://kmong.com/@RPA%EA%B3%A0%EC%88%98

 

프로그램 개발, 웹사이트 신규 제작 전문가 RPA고수 - 크몽

총거래 수 71건, 평점 4.9의 IT·프로그래밍 전문가 RPA고수 님을 만나보세요. 250000원부터 시작!

kmong.com

 

 

 

반응형