단행본
내꺼하자! 파이썬! 왕초보! 파이썬 배워 크롤러 DIY 하다!
- 발행사항
- 더알음, 2016
- 형태사항
- 440 p: 삽도, 25 cm
- 서지주기
- 색인을 포함하고 있음
소장정보
위치 | 등록번호 | 청구기호 / 출력 | 상태 | 반납예정일 |
---|---|---|---|---|
이용 가능 (1) | ||||
한국청소년정책연구원 | 00026806 | 대출가능 | - |
이용 가능 (1)
- 등록번호
- 00026806
- 상태/반납예정일
- 대출가능
- -
- 위치/청구기호(출력)
- 한국청소년정책연구원
책 소개
독자님~~
인터넷으로 어떤 물건 살 때 먼저 구매하신 분들의 리뷰 보시죠?
영화나 연극 볼때도 먼저 보신 분들의 평가를 참고 하시죠?
위의 예에서 나온 구매 후기나 리뷰들을 비정형 데이터라고 하는데 비정형 데이터에는 아주 중요한 정보가 많이 있기 때문에 많은 기업이나 사람들이 비정형 데이터를 분석해서 가치를 찾고 있습니다.
그런데 비정형 데이터는 양이 너무 많아서 수집하기가 너무 어렵습니다.
일일이 손으로 복사한 후 붙여 넣기 하는 것도 한계가 있겠죠?
그래서 많은 양의 비정형 데이터를 수집해야 할 경우 데이터를 수집하는 작업을 자동으로 해 주는 크롤러(crawler) 라는 프로그램을 사용하는데 문제는 크롤러 프로그램이 저렴한 것은 수백 만원에서 비싼 것은 수 억원 까지 합니다.
이 책이 태어난 이유는 논문을 쓴다던지 고객 반응을 파악해야 하는 등의 비정형 데이터를 처리해야 하시는 분들에게 반드시 필요한 크롤러 라는 프로그램을 파이썬 언어를 사용해서 직접 DIY 할 수 있는 기술을 전해드리기 위해서입니다.
파이썬 언어를 전혀 사용해 본적이 없는 독자님들도 계시겠죠?
그래서 이 책은 파이썬 언어 기초부터 쉽게 출발을 합니다.
그리고 HTML 기초도 알려 드리고 Beautiful Soup 도 알려드린 후에 Naver , Daum , Facebook 등의 사이트의 Open API 를 이용한 크롤러를 만드는 방법을 한 줄 한 줄 코드를 설명하면서 DIY 할 수 있도록 전해 드립니다. 그리고 Open API 를 제공하지 않는 수많은 사이트들을 대상으로 크롤링 하는 크롤러를 만드는 방법을 캡쳐 화면과 함께 자세한 원리를 설명하면서 전해 드립니다.
또한 프로그래밍의 가장 중요한 알고리즘에 대해서도 파이썬 언어를 활용해서 다양한 예제로 배울 수 있도록 설명하고 있습니다.
이 책을 다 보신 후에는 수억원의 가치를 직접 만드시게 될 것입니다
출판사 서평 (리뷰)
안녕하세요! 독자님.
이 책의 공동 저자인 서진수입니다.
빅데이터 분석 일을 오래 하면서 정말 절실하게 느꼈던 어려움이 데이터를 수집하는 것이었습니다.
특히 게시판이나 리뷰 같은 거 모아야 할 때면 밤새 컴퓨터 앞에서 복사+붙여넣기를 해서 수천, 수만 건의 데이터를 모은 적도 아주 많지요.
정말 헤아릴 수 없는 수많은 밤을 눈물과 짜증과 함께 보낸 아픈 추억이 많습니다.
바로 그래서 이 책을 기획하고 쓰게 되었습니다.
지금 이 순간에도 비정형 데이터를 모으기 위해 제가 했던 어려움들을 똑같이 겪고 계신 분들이 분명 있을 거라고 생각합니다. 그 분들께 조금이라도 힘이 되기 위해서 파이썬과 크롤러를 만드는 기술을 전해 드리고 싶었습니다.
사실 크롤러라는 프로그램은 상용버전이 수백 만원에서 수억까지 하는 아주 비싼 프로그램입니다.
그리고 특히 소셜 데이터 분석이나 비정형 데이터 분석을 하는 회사들의 큰 노하우가 바로 크롤링이지요. 이 책 한 권으로 시중에서 사용되는 모든 크롤링 기법을 다 전한다는 것은 사기이겠지만 웹 페이지 데이터를 크롤링하는 원리는 정말 잘 설명을 하고 있으니 이 책 열공하시면 파이썬 기초와 크롤러 제작이라는 두 마리 토끼를 다 잡게 되실 거예요.
정말 열심히 공부해서 많은 것을 배워 가시기를 응원하겠습니다.
인터넷으로 어떤 물건 살 때 먼저 구매하신 분들의 리뷰 보시죠?
영화나 연극 볼때도 먼저 보신 분들의 평가를 참고 하시죠?
위의 예에서 나온 구매 후기나 리뷰들을 비정형 데이터라고 하는데 비정형 데이터에는 아주 중요한 정보가 많이 있기 때문에 많은 기업이나 사람들이 비정형 데이터를 분석해서 가치를 찾고 있습니다.
그런데 비정형 데이터는 양이 너무 많아서 수집하기가 너무 어렵습니다.
일일이 손으로 복사한 후 붙여 넣기 하는 것도 한계가 있겠죠?
그래서 많은 양의 비정형 데이터를 수집해야 할 경우 데이터를 수집하는 작업을 자동으로 해 주는 크롤러(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