엑셀, 파워쿼리, 파이썬 등을 공부하면서 가장 좋았던 부분은 바로 단순반복업무를 내가 하지 않아도 된다는 점이었다.
단순반복업무는 컴퓨터가 나보다 훨~~씬 잘한다. 컴퓨터에게 단순반복업무를 맡기는 것에 대한 주관적 생각이다.
1. 실수가 줄어든다.
- 처음 입사했을 때 9시 출근이지만 8시에 출근해서 엑셀 데이터를 수작업 하며 9시까지 보고했다.
- 아침에 1시간 일찍 출근하여 1시간 동안 데이터가 틀린 게 없나 집중적으로 보았음에도 실수할 때가 있었다. (당시 수작업)
- 엑셀을 자동화한 이후 실수가 굉장히 많이 줄었다.
2. 빠르다.
- 오전에 8시에 출근해서 1시간 동안 하던 일을 복사 + 붙여넣기로 끝낼 수도 있다.
- 10분 정도 검토 후 제출이 가능하다.
3. 단순반복 업무에 대한 회의감이 없다.
- 대부분의 사람들의 경우, 지루한 반복업무를 경험하면 "내가 이러려고 회사왔나" 등의 생각을 많이 가지게 된다.
- 컴퓨터가 하고 있는 걸 보면, 즐겁고 뿌듯하다.
[크롤링 예시]
: 크롤링이란 ? 크롤링(crawling) 혹은 스크레이핑(scraping)은 웹 페이지를 그대로 가져와서 거기서 데이터를 추출해 내는 행위다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
import requests
from bs4 import BeautifulSoup
import time
import csv
#What is my user-agent 사이트 검색 후 넣어주기 headers = {"User-Agent":"Mozilla/5.0 ~~ "}
filename = "원하는 파일이름.csv"
f = open(filename, "w", encoding="utf-8-sig", newline="")
writer = csv.writer(f) #csv 파일만들기 #csv 머릿글 내용 data = ['Link', 'Title', 'Number', 'Address', 'Type', 'Page_num']
#csv 첫행 삽입
writer.writerow(data) #반복문 시행 for i in range(1, 30) :
url = f'https://www.~~.pagenum = {i}' #url 주소입력 및 페이지 넘버 바뀌는 부분만 f-string으로 변경해주기
print(str(i) + '페이지 입니다.') # 페이지 구분을 위함 (확인용)
# print(url)
res = requests.get(url)
res.raise_for_status() #정상출력 확인
soup = BeautifulSoup(res.text, 'html.parser')
items = soup.select('.txtSet') #soup.select 사용 시 class명 앞에는 . 붙여야 함, id는 #
for item in items :
link = item.select_one('span > a').get('href') #하이퍼링크 읽어오기
title = item.select_one('p').text.split(" ")[0]
number = item.select_one('p').text.split(" ")[-1]
address = item.select_one('.txtSection > li:nth-child(1)').text.strip() # strip : 공백제거
type = item.select_one('.txtSection > li:nth-child(2)').text.strip() # li:ntd ~ 2개 있는 경우 이런 방식으로 해결
writer.writerow([link, title, number, address, type, i])
# print(link, title, number, address, type)
time.sleep(0.5)
print('------크롤링을 종료합니다------ ')
|
현재 코드로 웹사이트 내에 있는 데이터들을 엑셀 형태로 저장하는 코드이다.
처음엔 어려워보이지만 만들어보면 해볼만 하고, 업무처리속도는 비교할 수 없게 된다.
해당 내용은 구체적인 부분은 변경하였고, 나의 개인적인 업무 참고용으로 블로그에 게시하였다.
(그래서 복붙하시면 작동이 안 된다.)
업무 자동화를 통해 많은 분들이 위에서 언급한 3가지 장점을 누려보았으면 좋겠다.
'파이썬(Python)' 카테고리의 다른 글
[Python] 정규표현식을 통한 숫자형태 변환 replace 함수활용 (1) | 2022.10.04 |
---|---|
[파이썬(Python)] 파이썬으로 엑셀 작동하기_조작방법(openpyxl) (0) | 2022.10.02 |
[한산-용의 출현] 댓글 수집하기 (0) | 2022.08.01 |
[Python] Kaggle 에서 데이터 다운받기 (0) | 2022.07.24 |
[파이썬] Python 데이터 분석 기본환경설정 (0) | 2022.07.17 |
댓글