장바구니 담기 close

장바구니에 상품을 담았습니다.

파이썬으로 웹 크롤러 만들기

파이썬으로 웹 크롤러 만들기 초간단 나만의 웹 크롤러로 원하는 데이터를 가져오는 방법

  • 라이언 미첼
  • |
  • 한빛미디어
  • |
  • 2016-12-01 출간
  • |
  • 284페이지
  • |
  • 188 * 257 mm
  • |
  • ISBN 9788968484698
★★★★★ 평점(10/10) | 리뷰(2)
판매가

24,000원

즉시할인가

21,600

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
21,600

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

목차

CHAPTER 1 첫 번째 웹 스크레이퍼
1.1.연결
1.2.BeautifulSoup 소개

CHAPTER 2 고급 HTML 분석
2.1.닭 잡는 데 소 잡는 칼을 쓸 필요는 없습니다
2.2.다시 BeautifulSoup
2.3.정규 표현식
2.4.정규 표현식과 BeautifulSoup
2.5.속성에 접근하기
2.6.람다 표현식
2.7.BeautifulSoup를 넘어

CHAPTER 3 크롤링 시작하기
3.1.단일 도메인 내의 이동
3.2.전체 사이트 크롤링
3.3.인터넷 크롤링
3.4.스크래파이를 사용한 크롤링

CHAPTER 4 API 사용
4.1.API는 어떻게 동작하는가
4.2.공통 표기법
4.3.응답
4.4.에코 네스트
4.5.트위터
4.6.구글 API
4.7.JSON 파싱
4.8.모든 것을 하나로
4.9.마치며

CHAPTER 5 데이터 저장
5.1.미디어 파일
5.2.데이터를 CSV로 저장
5.3.MySQL
5.4.이메일

CHAPTER 6 문서 읽기
6.1.문서 인코딩
6.2.텍스트
6.3.CSV
6.4.PDF
6.5.마이크로소프트 워드와 .docx

CHAPTER 7 지저분한 데이터 정리하기
7.1.코드로 정리하기
7.2.사후 정리

CHAPTER 8 자연어 읽고 쓰기
8.1.데이터 요약
8.2.마르코프 모델
8.3.자연어 툴킷
8.4.추가 자료

CHAPTER 9 폼과 로그인 뚫기
9.1.파이썬 requests 라이브러리
9.2.기본적인 폼 전송
9.3.라디오 버튼, 체크박스, 기타 필드
9.4.파일과 이미지 전송
9.5.로그인과 쿠키 처리
9.6.기타 폼 문제

CHAPTER 10 자바스크립트 스크레이핑
10.1.자바스크립트에 관한 간단한 소개
10.2.Ajax와 동적 HTML
10.3.리다이렉트 처리

CHAPTER 11 이미지 처리와 텍스트 인식
11.1.라이브러리 개관
11.2.형식이 일정한 텍스트 처리
11.3.CAPTCHA 읽기와 테서랙트 훈련
11.4.CAPTCHA 가져오기와 답 보내기

CHAPTER 12 스크레이핑 함정 피하기
12.1.스크레이핑의 윤리에 관해
12.2.사람처럼 보이기
12.3.널리 쓰이는 폼 보안 기능
12.4.사람처럼 보이기 위한 체크리스트

CHAPTER 13 스크레이퍼로 웹사이트 테스트하기
13.1.테스트 입문
13.2.파이썬 unittest
13.3.셀레니움을 사용한 테스트
13.4.unittest vs 셀레니움

CHAPTER 14 원격 스크레이핑
14.1.원격 서버를 쓰는 이유
14.2.토르
14.3.원격 호스팅
14.4.추가 자료
14.5.미래를 향해

APPENDIX A 파이썬 훑어보기
A.1.설치와 ‘Hello, World!’

APPENDIX B 인터넷 훑어보기

APPENDIX C 웹 스크레이핑의 합법성과 윤리
C.1.상표? 저작권? 특허?
C.2.동산 침해
C.3.컴퓨터 사기와 악용에 관한 법률
C.4.robots.txt와 이용 약관
C.5.세 가지 웹 스크레이퍼 사례  

도서소개

웹 어디서든 내가 원하는 데이터를 쏙쏙쏙

웹에 존재한다면 그것이 어떤 형태이든 데이터로 추출할 수 있다. 필요한 무기는 이 책과 파이썬뿐. BeautifulSoup, 셀레니움, 테서랙트 등 강력한 파이썬 라이브러리 사용법과 함께 API, 인증, 이미지 및 텍스트 인식, 로그인 처리 등 웹 크롤링의 기초부터 고급 기법까지 종합적으로 다루는 유일한 책. 실제 업무와 생활에 적용할 수 있는 예제를 통해 일상의 데이터 분석가가 될 수 있다



복잡 다양한 웹에서 우아하게 데이터를 수집하는 방법 A to Z

우리는 생활 속의 많은 부분이 인터넷에서 이루어지는 시대에 살고 있습니다. 그 어느 때보다 많은 데이터로 넘쳐나는 웹 세상에서 필요한 데이터를 가져와 분석하는 일의 중요성도 커졌습니다. 인터넷을 활보하며 데이터를 수집하는 프로그램을 웹 크롤러 혹은 웹 스크레이퍼라고 합니다. 웹 크롤러는 데이터 수집을 자동화하므로 비즈니스 의사 결정에 큰 도움이 되고, 웹사이트 스캐너로 활용할 수도 있어 보안 분야에서도 사용됩니다.
웹 크롤링은 인증 같은 웹 기술에 대한 이해는 물론, 데이터 정제, DB 저장 등 여러 기술에 대한 지식이 필요한 분야에 속합니다. 따라서 프로그래밍 스킬을 향상하는 데에 아주 좋은 주제이며, 과거에는 프로그래밍 전문가만이 웹 크롤러를 만들 수 있었습니다. 하지만 파이썬이라는 배우기 쉬운 언어와 쉽게 쓸 수 있는 각종 라이브러리들이 등장하며 이러한 장벽은 무너졌습니다. 기업 사례뿐만 아니라 음원 차트 추출하기, 서울의 기온 데이터 추출하기, 게시판 문서 다운로더 등 주위를 둘러보면 의외로 많은 생활 속 사례를 찾을 수 있습니다.
『파이썬으로 웹 크롤러 만들기』는 웹 크롤링이라는 주제 하나에 집중하는 책입니다. 업무상 웹 크롤러를 만들다 푹 빠진 나머지 회사를 나와서도 계속 웹 크롤러를 만들고 있는 개발자가 썼습니다. 파이썬과 라이브러리를 이용하여 아주 간단한 웹 크롤러를 만드는 것으로 시작해서, HTML, API 등 웹 기술의 기초부터 데이터 정제 및 저장, 자연어 처리, 이미지 및 텍스트 인식 등 고급 기법까지 종합적으로 살펴봅니다.
책의 1부는 파이썬과 함께 BeautifulSoup, 스크래파이 같은 라이브러리를 이용하여 아주 간단하게 웹 크롤러를 만들어보며 시작합니다. 나아가 API를 이용한 수집, 데이터를 MySQL로 저장하는 방법, CSV, PDF, 워드 파일을 분석하는 방법까지 필요에 따라 다양한 라이브러리를 활용하여 웹 크롤러를 구현하는 방법에 집중합니다. 위키백과를 크롤링하며 ‘케빈 베이컨의 여섯 다리’(과연 전 세계 사람은 여섯 다리만 거치면 연결될까요?) 문제를 풀어보는 예제도 있습니다.
2부는 웹 크롤링을 둘러싼 더욱 흥미로운 주제와 기법을 다룹니다. 웹에서 가져온 지저분한 데이터를 정돈하고 정제하는 방법(오픈리파인), 자연어 처리(NLTK), 폼과 로그인 뚫기(requests), 자바스크립트로 만든 동적 페이지 수집하기(셀레니움), 이미지 처리(필로) 및 텍스트 인식(테서랙트), 웹사이트 테스트(unittest), 원격 크롤링(토르) 등 고급 기법과 라이브러리 사용법을 살펴봅니다. 특히 텍스트 인식은 CAPTCHA, 즉 자동 가입 방지 문자를 우회하는 데 유용하며, 크롤링을 막는 방해물을 뚫기 위한 ‘사람처럼 보이기’ 기법은 아예 한 장을 할애해서 자세히 소개합니다.
저자는 웹 크롤링에 푹 빠져 있지만 웹 크롤러를 악용하는 것까지 찬성하는 것은 아닙니다. 부록에서는 웹 크롤링과 관련된 법적, 윤리적 쟁점과 실제 소송 사례 세 가지를 살펴보며 균형 잡힌 시각을 접할 수 있습니다.
오늘날 데이터가 넘쳐나는 웹에서 웹 크롤러로 할 수 있는 일은 무궁무진합니다. 필요한 것은 약간의 파이썬 프로그래밍 능력 하나뿐입니다. 나머지는 이 책에서 배울 수 있습니다. 웹 크롤링을 적용하여 업무를 자동화하고 생활 속에서 유용한 통찰을 찾는 데 이 책이 큰 도움이 되리라 믿습니다. 복잡 다양한 웹 세상에서 우아하게 데이터를 수집하고 싶은, ‘일상의 데이터 분석가’를 꿈꾸는 이들에게 이 책을 권합니다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.