로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

파이썬 웹 스크래핑

 [다양한 상황 해결을 통한 웹 스크랩]
   
지은이 리차드 로손   |   출판사 에이콘  |   발행일 2017년 04월 27일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 20,000원18,000원 10%
마일리지 5% 1,000원
발행일 2017-04-27
ISBN 8960779598 | 9788960779594
기타정보 번역서 | 224쪽 | 일반
예상출고일 금일 가능 (근무일기준)
배송비 2,000원 (20,000원이상 무료배송)
   
프로그래밍언어
   
이 책의 원서
  Web Scraping with Python (Community Experience Distilled)
Packt Publishing | Richard Lawson
 

[ 요약 ]

웹 스크랩의 기본 개념과 파이썬 3를 이용해 쉽고 빠르게 웹 스크래핑하는 방법을 알려준다. 웹사이트를 다운로드해 정규식을 통해서 스크랩하는 방식부터 파이썬 라이브러리(Scrapy, Selenium)까지 점차 개념을 확장해나가 기초를 다질 수 있다. 여러 상황을 고려한 예제로 기본 원리를 테스트할 수 있으며, 배운 방법을 실제 서비스를 제공하는 웹사이트에 적용하는 방법도 배울 수 있다.


[ 이 책에서 다루는 내용 ]

■ 웹사이트 수집을 위한 링크 선택 방법
■ lxml을 이용한 웹사이트 데이터 추출
■ 동시에 여러 웹 페이지를 처리하기 위해 스레드를 사용하는 크롤러 제작
■ 대역폭을 줄이기 위한 다운로드 캐시
■ 자바스크립트 기반 웹사이트를 분석하는 방법
■ 폼과 세션을 처리하는 방법
■ 캡차(CAPTCHA)로 보호되는 웹사이트 처리
■ AJAX 호출 리버스 엔지니어링
■ Scrapy로 고급 스크래퍼 제작


[ 이 책의 대상 독자 ]

웹사이트에서 데이터를 스크랩하기 위해 믿을 만한 프로그램을 만들고자 하는 개발자를 대상으로 하는 책으로 파이썬 개발 경험이 있다고 가정하고 설명한다. 파이썬이 아니더라도 다른 프로그래밍 경험이 있어도 이 책을 읽고 이해할 수 있다.


[ 이 책의 구성 ]

1장, '웹 스크래핑 소개'에서는 웹 스크래핑을 소개하고 웹사이트를 수집하는 방법을 알아본다.
2장, '데이터 스크래핑'에서는 웹 페이지에서 데이터를 추출하는 방법을 알아본다.
3장, '캐시를 사용한 다운로드'에서는 결과를 캐시 처리해 다시 다운로드하지 않는 방법을 알아본다.
4장, '병렬 다운로드'에서는 동시에 다운로드해 더 빠르게 데이터를 스크랩하는 방법을 알아본다.
5장, '동적 생성 콘텐츠'에서는 동적 웹사이트에서 데이터를 추출하는 방법을 알아본다.
6장, '폼 처리'에서는 찾고자 하는 데이터에 접근하기 위해 폼을 처리하는 방법을 알아본다.
7장, '캡차(CAPTCHA) 해결'에서는 캡차 이미지에 의해 보호되는 데이터에 접근하는 방법을 알아본다.
8장, 'Scrapy'에서는 유명한 고급 Scrapy 프레임워크를 사용하는 방법을 알아본다.
9장, '실제 웹사이트 적용'에서는 지금까지 다뤄진 웹 스크래핑 기술을 실제 웹사이트에 적용해본다.


[ 지은이의 말 ]

인터넷에는 정말 유용할 데이터들을 갖고 있으며, 이 데이터는 공개돼 있고 공짜로 접근할 수 있다. 그러나 이런 데이터는 쉽게 재사용하기 어렵다. 웹사이트의 구조와 스타일에 맞게 구성돼야 하고 유용하게 추출돼야 한다. 웹 페이지에서 데이터를 추출하는 과정은 웹 스크래핑이라고 알려져 있고 온라인상에서 이용 가능한 정보들로 계속해서 유용하게 되고 있다.

1장. 웹 스크래핑 소개
__웹 스크래핑은 언제 필요한가?
__웹 스크래핑은 합법적인가?
__사전 조사
____robots.txt 확인
____Sitemap 살펴보기
____웹사이트의 크기 추정
____웹사이트에 사용된 웹 기술 확인
____웹사이트 소유자 찾기
__첫 번째 웹사이트 크롤링
____웹사이트 다운로드
______다운로드 재시도
______사용자 에이전트 설정
____Sitemap 크롤러
____ID 반복 크롤러
____링크 크롤러
______고급 기능
__요약

2장. 데이터 스크래핑
__웹 페이지 분석
__웹 페이지를 스크랩하는 3가지 방법
____정규식
____Beautiful Soup
____Lxml
______CSS 선택자
____성능 비교
______스크래핑 결과
____개요
____링크 크롤러에 스크랩 콜백 추가
__요약

3장. 캐시를 사용한 다운로드
__링크 크롤러에 캐시 기능 추가
__디스크 캐시 사용
____기능 구현
____캐시 테스트
____저장 디스크량 줄이기
____오래된 데이터 삭제
____디스크 캐시의 단점
__데이터베이스 캐시
____NoSQL이란?
____몽고DB 설치
____몽고DB 개요
____몽고DB 캐시 구현
____압축
____캐시 테스트
__요약

4장. 병렬 다운로드
__100만 개 웹 페이지
____Alexa 목록 분석
__순차적 크롤러
__스레드 크롤러
____스레드와 프로세스 동작 방식
____구현
____상호프로세스 크롤러
__성능
__요약

5장. 동적 생성 콘텐츠
__동적 웹 페이지 예제
__동적 웹 페이지 분석
____에지 케이스
__동적 웹 페이지 렌더링
____PyQt와 PySide
____자바스크립트 실행
____웹킷으로 웹사이트 처리
______결과 기다리기
______렌더 클래스
____셀레니움
__요약

6장. 폼 처리
__로그인 폼
____웹 브라우저에서 쿠키 가져오기
__내용을 최신화하는 로그인 스크립트 확장
__Mechanize 모듈로 폼 처리 자동화
__요약

7장. 캡차 해결
__계정 등록
____캡차 이미지 로딩
__광학 문자 인식
____개선할 사항
__복잡한 캡차 해결
____캡차 처리 서비스 이용
____9kw 시작
______9kw CAPTCHA API
____등록 통합
__요약

8장. Scrapy
__설치
__프로젝트 시작
____모델 정의
____스파이더 생성
______설정 조정
______스파이더 테스트
____shell 커맨드로 스크래핑
____결과 확인
____크롤링 중단과 재개
__포르티아로 시각적 스크래핑
____설치
____어노테이션
____스파이더 개선
____결과 확인
__Scrapely로 수집 자동화
__요약

9장. 실제 웹사이트 적용
__구글 검색 엔진
__페이스북
____웹사이트
____API
__갭
__BMW
__요약

리차드 로손(Richard Lawson)
오스트레일리아 출신으로 멜버른대학교에서 전산학을 전공했다. 졸업 후, 웹 스크랩을 전문으로 하는 사업을 시작했고 50개국이 넘는 곳을 원격으로 일하며 세계를 여행한다. 유창하게 에스페란토어를 사용하고 중국어와 한국어로 대화할 수 있으며, 오픈소스 소프트웨어에 참여하고 번역하는 일에 활동적이다. 현재 옥스포드 대학에서 대학원 과정에 있으며 여가에는 드론 개발을 즐긴다.


★ 옮긴이의 말★

요즘도 수집하는 사람이 있을지 모르겠지만, 드라마 <응답하라 1988>의 시대를 기억하는 사람이라면 좋아하는 연예인의 기사를 예쁘게 오려 수집한 기억이 있으리라. 신문 및 잡지라는 큰 정보의 덩어리에서 원하는 부분을 칼이나 가위로 오려 노트에 붙인 것이다. 이런 아날로그적인 방법이 현대에 와서는 디지털 방식으로 전환되고 있다.
개인적으로 스플렁크(Splunk)라는 빅데이터 플랫폼의 업무를 담당하면서 자료의 수집 및 저장에 대한 관심이 많아졌다. 요즘 각종 서비스들이 데이터 공유를 위해 API를 제공하면서 수집이 쉬워졌다. 하지만 원하는 데이터를 얻기에는 제한적이기에 웹 크롤링(Web Crawling)을 통해 수집해서 웹 스크래핑(Web Scraping)으로 원하는 부분을 추출하는 과정이 필요하다.
이 책은 웹 스크래핑에 대한 법적 문제를 먼저 다루고 기술적인 방법의 가장 기초적인 단계에서 점점 발전시켜 Scrapy라는 수집 전문 프레임워크까지 다룬다. 제로 웹 페이지에서 발생할 수 있는 상황에 대한 모든 부분을 다룬다. 많은 웹 페이지를 다운로드하면서 캡차(Captcha)나 로그인, 동적 데이터 처리 등 책에서 제시한 경우를 따라 하다 보면 어느덧 웹 스크래핑에 자신감을 느끼게 될 것이다.
이 책은 독자가 파이썬에 대한 기본 지식이 있다고 가정하기 때문에 파이썬 언어 자체에 대한 설명은 없다. 책 자체는 얇지만 내용은 아주 풍부하다.
이 한국어판이 나오기까지 정말 많은 시간이 걸렸다. 파이썬 2로 만들어진 내용을 파이썬 3로 바꾸면서 가급적이면 실행되도록 수정했지만 실행 및 개선 사항이 있다면, 언제든지 연락 바란다.


★ 옮긴이 소개 ★

김영하
타임게이트에서 소프트웨어연구소 수석 연구원으로서 머신 데이터 플랫폼(Splunk)와 모니터링 솔루션 eG의 기술 지원을 담당하고 있다. 또한 타임게이트 자체 제품인 가상화 관리 및 모니터링을 개발한다

등록된 서평이 없습니다.
SQL 전문가 가이드 [The Guide for SQL Professional](2013 Edition)...
한국데이터베이스진흥원
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
JSP 2.1 웹 프로그래밍(입문에서 완성까지)(SECOND EDITION)...
손진곤
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
자바 퀘스트(기초와 응용)...
임준식
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(0)
회원평점   회원서평수 0
에이콘 출판사의 신간
『KVM 가상화 완전 가이드: 클라우드 컴퓨팅을 위한 리눅스 가상화 시스템』
험블 데바시 치라멀, 프라사드 머크헤드카, 아닐 베타투 저
36,000원
(10%↓+5%)
 
『일래스틱서치 고급 기능의 개념과 활용: 일래스틱서치 5를 활용한 유연하고 확장 가능한 검색 솔루션 개발』
바디 딕시트 저
31,500원
(10%↓+5%)
 
『안드로이드 웨어 애플리케이션 개발: 안드로이드 웨어 앱 개발 기초부터 테스트, 배포까지』
시디크 하메드, 자비드 치다 저
21,600원
(10%↓+5%)
 
『언리얼 엔진 가상 현실 쿡북: 예제로 배우는 VR 개발』
미치 맥카프리 저
31,500원
(10%↓+5%)
 
『도메인 주도 설계 핵심: 핵심을 간추린 비즈니스 중심의 설계로 소프트웨어 개발 프로젝트 성공하기』
반 버논 저
22,500원
(10%↓+5%)
 
이메일주소수집거부