도서 리뷰 : 파이썬으로 웹 크롤러 만들기

nofence 2021. 8. 22. 23:47

현대 대부분의 사람들은 웹을 통해 데이터를 수집하고 분석하며 그 결과를 통해 의사결정의 지표로 삼고 있다. 웹은 데이터의 보고이자 거대한 데이터 저상소이기 때문이다. 하지만 웹을 통해 적재적소에서 적시에 원하는 데이터를 수집하는 것 자체가 시간과 비용이 수반 되는 노동집약적 활동이기 때문에 웹은 축복이자 저주의 공간이 될 수도 있는 양면성을 내포하고 있다. 원하는 곳에서 원하는 시간에 훌륭한 데이터를 수집하면 축복이겠지만 반대의 경우에는 웹이라는 공간이 포용하고 있는 수 많은 데이터 덩어리들은 저주이자 재앙이 될 수 있음을 간과할 수 없는 노릇이다. 어떻게 하면 웹에서 시간과 비용을 적게 들의 최소의 노력을 통해 효율적으로 데이터를 수집할 수 있을까? 이런 고민에서 비롯된 산물이 바로 '웹 크롤링' 또는 '웹 스크래핑' 기술이다. 지금 부터 소개할 책은 파이썬을 활용한 웹 크롤링 기술에 대한 다양한 트레이닝 툴킷으로 사용할 수 있는 도서이다. 

이 책은 크게 두 개의 파트로 구성 되어 있는 바, 첫번째 파트는 스크래핑 도구를 제작하는 과정에 대한 내용을 그리고 두번째 파트는 좀더 심화된 고급 스크래핑 기술을 다루고 있다. 

 

첫째 챕터에서 파이썬 생태계의 대표적인 스크래핑 지원 도구인 BeautifulSoup 패키지에 대해 학습하게 된다. BeautifulSoup을 통해 크롤링의 기본 원리를 익히게 되고 도구 활용에 대한 다양한 사례를 통해 스크래핑에 대한 기술을 확장해 나가게 된다. Scrapy를 통한 크롤링 활용 방법과 크롤링을 통해 수집 된 데이터를 DB에 저장하는 내용을 학습하며 첫번째 파트는 마무리 되고 두번째 파트에서는 본격적으로 고급 활용 기술을 익히게 된다. 

 

이후 다양한 포맷의 문서 읽기, Dirty Data 정리하기 등의 내용을 심화적으로 다루며 자연어 처리에 대한 주제를 바탕으로 NLTK를 활용하는 방법에 대해서도 학습하게 된다. 폼과 로그인 뚥기, 자바스크립트를 통한 스크레이핑, API를 통한 크롤링, 이미지 처리와 텍스트 인식에 대한 내용으로 주제가 확장 되면서 크롤링에 대한 합법성과 윤리를 끝으로 책은 마무리 된다. 

 

이 책은 기본적으로 파이썬 기본 문법을 뗀 사람들이 적어도 웹에 대한 기초 지식이 있는 상태에서 학습해야 어느 정도 소기의 성과를 다룰 수 있으리라 생각한다. 그만큼 크롤링 기술에 대한 학습이 결코 만만치 않으며 기초적인 수준에서 벗어나 고급 기술로 확장하기 위해선 다양한 지식이 요구 되기 때문이다. 본 도서는 파이썬 그리고 웹 초보자에겐 크롤링 입문자용으로 적합하지 않겠으나 어느 정도 기반을 갖춘 이들에겐 적어도 크롤링의 첫발을 떼기 딱 좋은 서적이라 생각한다. 

 

P.S 
한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

반응형