한 줄 요약 : 파이썬 공부 후 사이드 프로젝트용으로 참고하면 유용한 책
프로그래밍에 대한 진입장벽이 낮아지고 있다. 이런 흐름때문에 프로그래밍을 통해 반복되는 업무를 편하게 처리하려는 사용자도 늘고있다. 그런데 자동화는 프로그래밍의 진입장벽이 낮아지며 갑자기 생겨난 것이 아니다. 문서 작성할 때 주로 사용했던 ᄒᆞᆫ글(한글), 엑셀에도 자동화 기능은 있었다. '매크로', '자동 서식' 가 그것이다.
매크로 같은 기능이 이미 있는데 왜 프로그래밍 언어까지 배워서 자동화를 해야 할까?
내 생각은 폭 넓은 확장성과 커뮤니티에 있다고 생각한다. 관련된 기능을 만들어 놓은 '라이브러리'가 풍부하기 때문이다. 확장성은 자동화하려는 프로그램(엑셀 등)과 관련된 추가, 자동화 기능을 모아놓은 묶음인 라이브러리가 많다는 것이다. 커뮤니티는 내가 자동화하려고 생각했던 부분을 다른 누군가가 이미 시도해 보고 그것에 대해 정리해놓은 자료가 많다는 뜻이다.
하지만 생각보다 쉽지 않다. 프로그래밍을 배우는 것, 라이브러리 사용법에 익숙지 않다는 문제가 있기 때문이다. 이번에 리뷰할 《엑셀 대신 파이썬으로 업무 자동화하기》 책은 딱 이 간극을 메우기 위한 책인듯하다.
이 책은 초보자가 익히기 쉬운 언어로 알려진 파이썬(파이선) 기반으로 작성되었다.
책 내용은 크게 세 부분으로 나뉜다.
- 파이썬에 대한 문법
- 파이썬을 이용한 엑셀, 파워포인트 다루기(openpyxl, python-pptx 라이브러리 이용)
- 웹 크롤링, 엑셀 자동화 미니 프로젝트 구현
첫 번째 부분은 책 실습을 위해 필요한 파이썬 문법 내용을 충분히 담고 있다. '파이썬에 대한 내용이 너무 적은 것 아닌가' 하는 생각을 하는 분도 있을 것 같다. 하지만 이 책은 파이썬 기본서가 아니라 업무 자동화를 위해 파이썬을 사용한다. 그리고 실습을 위해 필요한 내용은 충분히 담겨 있다.
두 번째 부분. openpyxl, python-pptx 라이브러리를 이용해서 엑셀, 파워포인트를 다루기
프로그래밍에 대한 경험이 충분하지 않을 때 라이브러리를 찾고, 사용하는 부분이 가장 어렵게 느껴진다. 대부분의 라이브러리가 해외에서 만들어지다보니 설명도 영어로 된 것들이 많기 때문이다. 이런 부분을 생각하면 책에서 '파이썬'과 '자동화 프로젝트' 두 단계 사이에 '라이브러리 기초 사용법'을 추가한 것이 적절한 선택 같다.
책에서는 openpyxl, python-pptx를 엑셀, 파워포인트 활용한 내용을 담고 있다. 책에서 소개한 라이브러리 외에 다른 라이브러리도 많다. 하지만 일단 한 가지 라이브러리 사용법을 충분히 익히고 나면 다른 라이브러리를 사용하는 것에 진입장벽이 매우 낮아진다.
마지막 부분은 앞에서 다룬 파이썬과 라이브러리를 활용한 사이드 프로젝트 구현이다.
첫 번째 프로젝트는 크롤링이다. 크롤링은 파이썬 크롤링의 대표적인 라이브러리인 beautifulsoup4와 Selenium을 이용해 실습한다. 웹 페이지에서 원하는 검색어에 대한 결과페이지 정보, 상품 가격등을 가지고 온 뒤 엑셀 파일로 만들어 보는 것이다.
두 번째 프로젝트는 앞에서 사용했던 openpyxl, selenium과 pandas, pyautogui도 사용한다. 기존에 작성된(데이터가 입력이 되어있는) 엑셀 파일에서 필요한 데이터를 가져온 뒤 원하는 형태로 출력 결과물을 만든다.
인터넷 자료 검색 후 문서 작성 자동화, 파워포인트·엑셀 문서 작성/수정 자동화, 파이썬 프로그래밍 경험을 바탕으로 무언가 만들어 보고 싶은 경우 이 책이 그 입문서로 도움이 될 것 같다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
리뷰를 위해 한빛미디어에서 책을 제공받았지만 주관적인 생각을 그대로 적었습니다.
'Activity > 책 리뷰' 카테고리의 다른 글
[리뷰/책] 《프로그래머의 뇌》 리뷰 (0) | 2022.08.10 |
---|---|
[리뷰/책] 구글 앱스 스크립트 완벽 가이드 (0) | 2022.07.24 |
[리뷰/책] 동시성 프로그래밍 (0) | 2022.04.25 |
[리뷰/책] 자바 마이크로서비스를 활용한 SRE (0) | 2022.03.27 |
[리뷰/책] 당당한 디자인 결정을 위한 9가지 방법 (0) | 2022.02.23 |