한국청소년정책연구원 도서관

로그인

한국청소년정책연구원 도서관

자료검색

  1. 메인
  2. 자료검색
  3. 통합검색

통합검색

단행본

내꺼하자! 파이썬! 왕초보! 파이썬 배워 크롤러 DIY 하다!

발행사항
더알음, 2016
형태사항
440 p: 삽도, 25 cm
서지주기
색인을 포함하고 있음
비통제주제어
파이썬, 크롤링, 문자열
소장정보
위치등록번호청구기호 / 출력상태반납예정일
이용 가능 (1)
한국청소년정책연구원00026806대출가능-
이용 가능 (1)
  • 등록번호
    00026806
    상태/반납예정일
    대출가능
    -
    위치/청구기호(출력)
    한국청소년정책연구원
책 소개
독자님~~
인터넷으로 어떤 물건 살 때 먼저 구매하신 분들의 리뷰 보시죠?
영화나 연극 볼때도 먼저 보신 분들의 평가를 참고 하시죠?

위의 예에서 나온 구매 후기나 리뷰들을 비정형 데이터라고 하는데 비정형 데이터에는 아주 중요한 정보가 많이 있기 때문에 많은 기업이나 사람들이 비정형 데이터를 분석해서 가치를 찾고 있습니다.

그런데 비정형 데이터는 양이 너무 많아서 수집하기가 너무 어렵습니다.
일일이 손으로 복사한 후 붙여 넣기 하는 것도 한계가 있겠죠?
그래서 많은 양의 비정형 데이터를 수집해야 할 경우 데이터를 수집하는 작업을 자동으로 해 주는 크롤러(crawler) 라는 프로그램을 사용하는데 문제는 크롤러 프로그램이 저렴한 것은 수백 만원에서 비싼 것은 수 억원 까지 합니다.

이 책이 태어난 이유는 논문을 쓴다던지 고객 반응을 파악해야 하는 등의 비정형 데이터를 처리해야 하시는 분들에게 반드시 필요한 크롤러 라는 프로그램을 파이썬 언어를 사용해서 직접 DIY 할 수 있는 기술을 전해드리기 위해서입니다.

파이썬 언어를 전혀 사용해 본적이 없는 독자님들도 계시겠죠?
그래서 이 책은 파이썬 언어 기초부터 쉽게 출발을 합니다.
그리고 HTML 기초도 알려 드리고 Beautiful Soup 도 알려드린 후에 Naver , Daum , Facebook 등의 사이트의 Open API 를 이용한 크롤러를 만드는 방법을 한 줄 한 줄 코드를 설명하면서 DIY 할 수 있도록 전해 드립니다. 그리고 Open API 를 제공하지 않는 수많은 사이트들을 대상으로 크롤링 하는 크롤러를 만드는 방법을 캡쳐 화면과 함께 자세한 원리를 설명하면서 전해 드립니다.

또한 프로그래밍의 가장 중요한 알고리즘에 대해서도 파이썬 언어를 활용해서 다양한 예제로 배울 수 있도록 설명하고 있습니다.
이 책을 다 보신 후에는 수억원의 가치를 직접 만드시게 될 것입니다

출판사 서평 (리뷰)

안녕하세요! 독자님.
이 책의 공동 저자인 서진수입니다.
빅데이터 분석 일을 오래 하면서 정말 절실하게 느꼈던 어려움이 데이터를 수집하는 것이었습니다.
특히 게시판이나 리뷰 같은 거 모아야 할 때면 밤새 컴퓨터 앞에서 복사+붙여넣기를 해서 수천, 수만 건의 데이터를 모은 적도 아주 많지요.
정말 헤아릴 수 없는 수많은 밤을 눈물과 짜증과 함께 보낸 아픈 추억이 많습니다.

바로 그래서 이 책을 기획하고 쓰게 되었습니다.
지금 이 순간에도 비정형 데이터를 모으기 위해 제가 했던 어려움들을 똑같이 겪고 계신 분들이 분명 있을 거라고 생각합니다. 그 분들께 조금이라도 힘이 되기 위해서 파이썬과 크롤러를 만드는 기술을 전해 드리고 싶었습니다.
사실 크롤러라는 프로그램은 상용버전이 수백 만원에서 수억까지 하는 아주 비싼 프로그램입니다.
그리고 특히 소셜 데이터 분석이나 비정형 데이터 분석을 하는 회사들의 큰 노하우가 바로 크롤링이지요. 이 책 한 권으로 시중에서 사용되는 모든 크롤링 기법을 다 전한다는 것은 사기이겠지만 웹 페이지 데이터를 크롤링하는 원리는 정말 잘 설명을 하고 있으니 이 책 열공하시면 파이썬 기초와 크롤러 제작이라는 두 마리 토끼를 다 잡게 되실 거예요.
정말 열심히 공부해서 많은 것을 배워 가시기를 응원하겠습니다.
목차
Day 0 / 시작하기 전에... _12 Day 1 / Python 소개와 내 컴퓨터에 설치하기 _20 01 프로그래밍 언어와 Python이 뭔가요? _21 02 윈도에 Python 프로그램 설치하기 _24 Day 2 / 데이터를 그릇에 담기 - 변수를 배웁니다 _40 01 변수란 무엇일까요? _41 02 변수는 어떻게 만들고 사용할까요? _42 03 다양한 변수 만들어서 활용하기 _44 1. 다양한 연산자 살펴보기 _44 2. 변수값을 화면에 출력하기 _46 3. 사용자에게 값을 입력받아 변수에 저장하기 _49 ㆍ연습문제 _53 Day 3 / 다양한 데이터 유형과 사용 방법 배우기 _56 01 숫자형 _57 1. 숫자형의 종류 _57 02 문자열 유형 _65 1. 문자열이란? _65 2. 인덱싱과 슬라이싱 _66 3. Meta Character(메타 캐릭터)와 Escape Character(탈출문자) _69 4. 입력된 문자를 소문자/대문자로 바꾸기 [lower( ) 함수/upper( ) 함수] _71 5. 문자열에서 특정 글자의 개수 찾기 - [count( ) 함수] _72 6. 특정 문자가 있는 위치 찾기 - [index( ) 함수] _73 7. 문자열에서 좌/우 공백 제거하기 - [lstrip( )/rstrip( )/strip( )] _74 8. 문자열에서 내용 바꾸기 - [replace( )] _75 9. 문자열 나누기 - [split( )] _76 10. 문자열의 길이 확인하기 - [len( )] _77 11. 문자열로 연산하기 _77 12. 여러 줄의 문자열 저장하기 _78 13. 입력 받는 내용을 문자로 지정하기 _78 14. 퀴즈 _80 03 리스트 유형 _83 1. 리스트 유형이란? _83 2. 리스트로 데이터 관리하기 _84 3. 퀴즈 _91 4. 튜플(tuple) 유형 _92 5. 딕셔너리 유형(map 유형이라고도 합니다) _94 6. 불리언(Boolean) _99 7. SET(셋) 유형 _101 Day 4 / 조건문과 반복문 배우기 _104 01 IF 조건문 배우기 _105 02 for 반복문 _116 03 while 반복문 _124 04 중간에 멈추기와 건너뛰기 ? break 문과 continue 문장 _126 Day 5 / 함수와 클래스, 모듈을 배웁니다 _136 01 직접 함수 만들기 도전 _137 02 클래스(class) _146 03 모듈(module) _159 04 알아두면 유용한 여러 가지 Python 모듈들 소개 _168 Day 6 / 정규식과 예외처리에 대해서 배웁니다 _174 01 정규식을 배웁니다 _175 1. 주요 정규식 기호의 의미 _176 2. 정규식 기초 문법 사용 설명 _181 3. Match object 방법 활용하기 _189 4. 정규식에서 사용하는 다양한 함수들 _190 02 예외처리를 배웁니다 _195 Day 7 / HTML과 urllib, 파일 입출력 관리 배우기 _208 01 HTML이 무엇일까요? _209 1. 홈페이지가 보이는 원리 _210 2. HTML 기초 배우기 _213 02 urllib 라이브러리에 대해서 배웁니다 _239 1. urllib의 주요 모듈 활용하기 _240 03 os모듈 _248 1. 다양한 함수들 _248 2. os.path 모듈 _255 3. 파일 생성 및 수정하기 _260 Day 8 / Beautiful Soup와 다양한 크롤러 만들기 _274 01 Beautiful Soup(뷰티풀 수프)란? _275 02 Beautiful Soup 설치하기 _276 03 Beautiful Soup 사용하기 _283 1. [find( ) 함수 - 태그를 하나만 가져 옵니다] _283 2. [find_all( ) 함수 - 해당 태그가 여러 개 있을 경우 한꺼번에 모두 가져옵니다] _286 3. 문장 가져오기 _292 4. 태그의 속성 _294 5. 태그의 관계 _297 6. find_parent( ) 함수와 find_parents( ) 함수 _299 04 도전! 다양한 웹크롤러 직접 만들기 _303 1. 크롤러를 만들기 전에 알아야 할 사항 _303 2. Open API를 활용한 텍스트 크롤러 만들기 _307 3. Open API를 제공하지 않는 사이트용 크롤러 만들기 _352 C o n t e n t sC o n t e n t s Day 9 / Python을 활용해서 알고리즘 배우기 _380 01 두 숫자 중에서 큰 숫자에서 작은 숫자를 뺀 값 출력하기 _381 02 약수 구하기 _383 03 최대 공약수 구하기 _385 04 최소 공배수 구하기 _387 05 피보나치 수열 구하기 _389 06 여러 개의 숫자 중에서 가장 큰 값과 작은 값 구하기 _391 07 사용자에게 값 입력받아 * 기호로 사각형 만들기 _394 08 사용자에게 값 입력받아 직각 삼각형 만들기 _396 09 사용자에게 값 입력받아 좌우가 바뀐 직각 삼각형을 만들기 _398 10 입력한 문장에서 원하는 알파벳의 개수 세기 _400 11 입력한 문장에 존재하는 알파벳 모두 골라내기(중복 X) _402 12 입력한 문장에 존재하는 알파벳 모두 골라내서 개수 세기 _404 13 리스트를 정렬하기 _406 14 리스트에서 원하는 값 찾기 _408 15 단어 바꾸기(split함수 미사용) _410 16 단어 바꾸기(split함수 사용) _412 17 시간 초를 입력받아서 시, 분, 초로 나타내기 _414 18 비만도 측정하기 _416 19 5명의 점수를 입력받아서 등수 출력하기 _418 20 팩토리얼 만들기 _421 ㆍ참고하세요! 여러 가지의 정렬을 소개합니다. _423 1. 선택 정렬 _423 2. 버블 정렬 _426 3. 삽입 정렬 _429 ㆍ찾아보기 _435