2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

기타/도서리뷰

[나는리뷰어다] 파이썬으로 웹크롤러 만들기

원당컴1 2021. 8. 16. 12:01

오늘 리뷰할  책은 파이썬으로 웹크롤러 만들기 입니다.

 

이책을 신청한 이유는 

최근 뉴스에서 공익근무자가 웹크롤러를 이용해서 우체국 등기우편을 자동으로 정리하는 프로그램을 만들어서 시간과 비용을 많이 단축시켰다는 뉴스가 흥미로웠던 부분이 있어서~

파이썬으로 웹크롤러를 간단하게 만들 수 있는지 궁금해서 신청을 해 보게 되었습니다.

또한 학생들이 많이 관심을 가지고 있는 분야이기도 해서 나중에 학생들과 함께 웹크롤러를 만들어 볼 수도 있을까 하는 기대감도 있었네요.^^

 

웹크롤러란?

웹크롤러는 스파이더 또는 검색엔진 봇이라고 하며 인터넷에서 콘텐츠를 다운로드하고 색인을 생성하는 것을 말합니다.

구글이 1994년 처음 시작될때 단 두명의 스탠퍼드 대학생뿐이었고 그들이 가진건 낡은 서버와 웹크롤러 뿐이었습니다.( 이 책의 67페이지 내용을 인용)

 

이 글에서 웹크롤러가 무엇인지 정확히 알 수 있는 글입니다.

그렇다면 우리가 웹크롤러를 이용해서 데이터를 수집하면 구글 같은 검색엔진을 만들 수 있나요?

" 작은 규모의 검색사이트는 운영할 수 있지만 구글과 같은 대용량 사이트를 운영하기 위해서는 데이터 관리 기법과 좀더 빠르게 검색을 할 수 있는 다양한 알고리즘 들을 고민하셔야 합니다~" 라는 것이 제 생각이네요.^^

그래도 천리길은 한걸음 부터라고 했습니다.

우리가 구글과 같은 검색 엔진을 만들려고 하면 첫 단추가 바로 웹크롤러 입니다.

일단 데이터를 수집하고 가공을 해야 고객들에게 맞춤 검색이 가능하도록 지원을 해 줄 수 있을것 같네요~

 

이 책의 구성은?

Part I: 스크레이퍼 제작

- Beautifulsoup를 활용하여 HTML 을 가져오는 방법

- 크롤링을 시작하는 방법 : 분석하기 쉬운 위키백과를 가지고 크롤링을 하는 방법에 대해 설명을 하고 있다.

- 웹크롤링 모델 : 어떤 제품 데이터를 수집할때 우리가 수집하려고 하는 속성들에 대해 설계 방법부터 다양한 웹사이트 레이아웃 다루는 방법 등에 대해 설명을 하고 있다.

- 스크레이피 : 크롤러 개발에 최고의 프레임워크인 스프레이피(Scrapy)를 설치 하고 사용하는 방법에 대해 다루고 있다.

- 데이터 저장 : 미디어파일,URL,텍스트 등을 무료 DBMS MySql을 이용하여 저장하는 방법에 대해 다루고 있다.

  

Part II : 고급 스크레이핑

- 문서 읽기 : 인터넷은 주로 텍스트 기반의 문서로 이루어져 있다. 이러한 문서에 대한 인코딩 방법과 csv 파일,pdf 파일,docx 파일 등의 문서를 다루는 방법을 설명하고 있다.

- 지저분한 데이터 정리하기 : 문서를 가져오면 정형화되지 않은 데이터들이 있는 웹사이트들이 많은데 이렇게 정형화 되지 않은 데이터를 어떤 식으로 처리해야 하는지 등의 기법에 대해 설명을 하고 있다.

- 자연어 읽고 쓰기 : 데이터를 다루기 위해서는 특정한 단어, 수 와 같이 정확한 단어를 인식하는 것은 쉽지만 "귀여운 고양이" 라는 검색어가 입력 되었을때 이것을 고양이 라고 인식하기 쉽지 않은데 마르코프모델에 대해 설명을 하고 이러한 것을 다루는 자연어 툴킷을 활용해서 이러한 자연어 처리 방법에 대해서 설명을 하고 있다.

- 폼과 로그인 뚫기 : 로그인 해야 얻을 수 있는 정보에 접근하기 위해서는 로그인과 쿠키 등에 대해서 처리 해야 하는데 이러한 경우 어떻게 처리 하는지 등에 대해 다루고 있다.

 

 

이 책을 읽고~

실제로 웹 크롤링을 하다 보면 상대 서버의 부하때문에 잘못하면 상대 서버에서 IP차단을 당하는 경우도 발생할 수 있습니다.

이 책에서는 하나 하나 실습을 하면서 이것을 실무에 사용하는 경우에는 어떤 점을 조심해야 한다는 충고를 해 주고 있습니다.

 

실무에 바로 적용할 수 있는 코드는 아니지만 이 책에서는 실무에서 필요한 모든 내용을 담고 있습니다.

HTML 분석 부터 자신이 원하는 데이터 수집시 객체 모델 생성방법, 자연어 처리 방법, 로그인 하여 데이터 수집 방법까지 웹크롤링에서 필요한 기법들을 하나 하나 주옥같은 내용들이 기록되어 있습니다.

 

이 책을 통해서 개념을 익히고 주의 할 점들을 조심한다고 하면 구글 과 같은 검색 사이트를 구현해 볼 수 있을것 같네요.

웹크롤링에 대해 공부하고 싶은 학생들이나 IT업계 종사자 분들이라면 이 책을 선택하시면 후회 하지는 않을것 같네요.

일단 이 책은 Python의 기본 문법은 알고 있는 분들을 위해 쓰여져 있으며 이 책의 예제를 하나 하나 따라서 연습을 하다 보면 웹크롤링 방법과 데이터베이스 구성 방법등의 개념을 익히고 실무에 적용할 수 있는 책이라고 판단 됩니다.

 

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

 

[인천 서구 원당컴퓨터학원]

 

 

 

 

원당컴퓨터학원에서는?

1. 4차 산업 시대의 흐름은 컴퓨터를 얼마나 이해하느냐에 따라 삶의 질이 틀려 질 수 있다는 것을 항상 염두에 두고 있습니다.

2. 알고리즘은 프로그래밍의 근원이 되는 문제해결 능력이며, 머신러닝은 IoT등에 의해 모여진 데이터를 활용하는 기법입니다.

3. 이에 따라 초,중,고 학생들이 알기 쉽게 이해하는 인공지능 부터 알고리즘까지 학생들의 실력에 맞춰 수업을 진행중에 있습니다.

4. 현재 초등학생이 고등학생이 되는 때에는 고교학점제 도입에 따라 자신이 전공하고자 하는 특기가 크게 부각 될것입니다.

5. IT 업체중 규모가 큰 곳에서는 코딩테스트(알고리즘테스트)로 블라인드 면접을 수행하는곳이 늘고 있습니다.

6. 미래 IT를 꿈꾸는 학생들의 산실이 되기 위해 항상 최선을 다하는 원당컴퓨터학원이 되겠습니다.

 

※ 정보영재 혹은 인공지능 관련 수업에 관해 궁금하신 분은 문의(032-565-5497) 주세요.

 

 

원당컴퓨터학원 커리큘럼

- OA : 학교 수행 평가에 꼭 필요한 컴퓨터 활용능력 향상

- IT 자격증 과정 : 취업대비,대학생인증제,승진을 위한 국가공인 자격증 취득과정

- 정보영재 : 정보올림피아드 및 알고리즘 대회/소프트웨어특기자전형/디미고 특별전형 대비/코딩테스트 대비를 위한 알고리즘 과정

- 프로젝트반 : 응용프로그래밍/웹프로그래밍/앱프로그래밍 등을 통해 직접 만들어 보면서 컴퓨터 프로그래밍 이해(소프트웨어 학생부종합전형/특성화고(디미고,선린고등) 특별전형대비)

- 인공지능 : 인공지능의 이해 및 실습을 통해 빅데이터 가공(4차 산업 시대의 축이 되는 인공지능 시대를 대비)

- 일반고,과고,영재고,특성화고,컴퓨터학과(SW) 대학생을 위한 내신대비 : python,java,c++,자료구조,알고리즘,이산수학 

 

사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기