품목정보
출간일 | 2018년 09월 28일 |
---|---|
쪽수, 무게, 크기 | 360쪽 | 610g | 173*230*18mm |
ISBN13 | 9791186697719 |
ISBN10 | 1186697717 |
출간일 | 2018년 09월 28일 |
---|---|
쪽수, 무게, 크기 | 360쪽 | 610g | 173*230*18mm |
ISBN13 | 9791186697719 |
ISBN10 | 1186697717 |
‘프’로그래밍 잘 ‘알’지 ‘못’해도 참 쉬운 파이썬 데이터 수집 자동화 일을 자동화하는 것은 이제는 필수를 넘어 생존 조건이다. 만약 대량의 정보를 웹에서 지속적으로 받고 필요한 정보를 골라서 처리해야 한다면 어떨까? 키워드를 하나씩 검색해서 정보를 얻고 저장하고 직접 가공한다면 많은 시간과 노력이 필요할 것이다. 이런 상황이라면 비교적 짧은 시간을 거쳐 만든 크롤러가 당신의 삶의 질을 완전히 개선할 수 있다. 본 책에서는 프로그래밍에 문외한인 분들도 자신만의 크롤러를 만들고 활용할 수 있도록 개발 환경 설치부터 코딩까지 그림과 함께 단계별로 쉽게 풀어서 설명하였다. 처음부터 모든 개념이 쉽게 다가오지는 않을 것이다. 하지만, 한 단계씩 실습해보고, 다른 예시를 찾아보고 또한 비슷하게 자신만의 코드를 작성해본다면 훨씬 더 빠르고 깊게 프로그래밍에 익숙해질 것이다. |
1장 파이썬에 대해서 1.1 파이썬이란? 1.2 파이썬을 쓰는 이유 1.3 프로그래밍을 배워야 하는 이유 2장 파이썬 개발 환경 구축하기 2.1 파이썬3 설치하기 2.2 파이참 2.3 프로젝트 2.4 패키지 만들기 2.5 hello 출력하기 3장 파이썬 기초 3.1 변수와 상수 3.2 if문 3.3 함수 3.4 사칙연산 예제로 배우는 함수 만들기 3.5 반복문 for 3.6 숫자 3.7 문자열 3.8 리스트 3.9 딕셔너리 3.10 딕셔너리 만들기 3.11 라이브러리 4장 웹 기초 4.1 HTTP 4.2 URL 4.3 HTML 5장 크롤러 만들기 5.1 크롬 설치하기 5.2 urllib 패키지 5.3 뷰티풀솝 사용 방법 5.4 네이버에서 특정 글자 추출하기 5.5 네이버 메뉴 이름 뽑아내기 5.6 타입 5.7 네이버 뉴스 제목 가져오기 6장 링크 수집하고 링크에 있는 내용 수집하기 6.1 대상 사이트 구조 파악하기 6.2 requests package 설치하기 6.3 페이지 불러오기 6.4 상세 페이지 링크 뽑아내기 6.5 링크별로 들어가서 페이지 불러오기 6.6 리스트에서 부분만 선택하기 6.7 서브 페이지 호출하기 6.8 서브 페이지에서 이름 추출하기 6.9 위치 추출하기 6.10 링크 추출하기 6.11 함수로 묶기 6.12 0부터 4번째까지 링크 상세 페이지 내용 추출하기 7장 쇼핑몰 크롤링 7.1 데이터 수집할 웹사이트 접속하기 7.2 페이지 불러오기 7.3 한 번에 안 뽑히는 경우 인덱스로 접근하기 7.4 함수로 묶기 7.5 제품명, 가격 함께 뽑기 7.6 딕셔너리로 여러 개 값 리턴하기 7.7 링크 뽑아내기 7.8 한 페이지 데이터를 한 덩어리로 만들기 7.9 한 페이지를 호출하는 부분을 함수로 감싸기 7.10 1페이지부터 5페이지까지 데이터 받아오기 8장 JSON 데이터 다루기 8.1 JSON 8.2 JSON 형식을 표로 표현하기 8.3 파이썬으로 JSON 다루기 8.4 엑셀에 데이터 넣고 데이터 나누기 9장 네이버 API 이용하기 9.1 애플리케이션 등록하기 9.2 API 주소 알아보기 9.3 requests 라이브러리 이용하기 9.4 온라인 제이선 뷰어 이용하기 9.5 API 호출한 후에 필요한 데이터 뽑아내기 9.6 API 호출 결과인 JSON 9.7 검색 결과 출력하기 9.8 반복문으로 결과 출력하기 9.9 특정 속성값만 뽑아내기 9.10 , 없애기 9.11 링크와 함께 출력하기 9.12 검색 결과를 10개에서 100개로 늘리기 9.13 함수로 묶기 9.14 검색 결과 페이징하기 9.15 결과 출력하기 9.16 여러 페이지 호출하기 9.17 제목, 블로거 이름, 링크만 뽑아서 엑셀에 넣기 9.18 엑셀에 데이터 넣고 가공하기 10장 세계 곡물 가격 JSON 데이터 호출해서 엑셀로 차트 그리기 10.1 대상 사이트 접속하기 10,2 대상 URL 알아보기 10.3 파이썬에서 호출하기 10.4 엑셀에 데이터를 넣고 차트 그리기 11장 공공 데이터 API 이용하기 11. 1 공공 데이터 들어가기 11.2 오픈 API 신청하기 11.3 신청한 API 활용하기 11.4 서울의 심야 약국 수 조사 11.5 커리어넷 진로직업정보 데이터로 원하는 직업 찾아보기 12장 Git 12.1 github.com 가입하기 12.2 리포지토리 12.3 GitHub에서 저장소 생성하기 12.4 리모트 리포지토리를 로컬 리포지토리로 가져와서 사용하기 12.5 GitHub의 다른 프로젝트 소스코드 가져와서 사용하기 |
우선 이 책은 알기 쉽고 재밌다.
어느 정도 다른 언어를 해본 사람이라면 하루, 아니 몇시간이면 훑어 볼 수 있는 난이도 및 양이다.
또한, 초심자라도 1주일이면 끝낼 수 있으리라 본다.
아주 깊은 내용을 담고 있진 않지만
요즘 트렌드한 기술 및 용어들(python3, json, 크롤링, 파싱, API, github 등)을 두루 담고 있다.
또한, 간단한 실습을 통해 해당 기술 및 용어들에 쉽게 익숙해질 수 있도록 쓰여져 있다.
물론 실습시 실제 외부 사이트(네이버, 실제 쇼핑몰 사이트 등)를 참조하여 크롤링 및 파싱하기때문에
해당 사이트들의 변경에 따른 영향 등으로 일부 책의 내용과는 다른 결과를 보여주는 부분이 있었다.
다만 이때 당황하지 않고 url 부분만 해당 사이트의 다른 페이지 또는 다른 사이트로 바꾸어
데이터 크롤링만 가능하면 학습 진행이 가능하다.
결론적으로 이 한권을 짧은 시간안에 가볍게(?) 학습함으로써 초심자나 크롤링에 관심이 있었던 독자들이
기본 지식을 습득할 수 있음은 물론이고 이를 기반으로 작금의 IT 트렌드에 보다 쉽게 적응할 수 있도록
도와주는 서적이라고 생각된다.
샘플사이트를 접속하는데 계속 문제가 생겨서 결국 포기하고 예제를 참고로 다른 사이트를 테스트삼아 따라해 보게 되었습니다. 이건 이대로 공부가 되니 좋다는 생각도 들었습니다.
책의 초반부는 파이썬의 기초를 다지기 위한 문법을 설명해 주고 있으며, 중반부는 샘플 사이트를 통해 크롤링하는 방법을 차근차근 설명해주고 있습니다. json을 다루는 방법과 네이버API를 활용하는 방법등도 책의 샘플을 따라하는데는 지장이 없을만큼 자세하게 나와있습니다.
크롤링에 대해서는 잘 이해가 가지 않던 부분이 있었는데 원하는 정보가 있는 HTML의 DOM구조를 파악해서 필요한 부분을 발췌하는 과정을 자동화 하여 원하는 정보를 모으는 작업이라는것을 알 수 있었습니다.
해결을 하긴 했습니다만, 네이버API 부분은 실제로 소스를 따라해봐도 계속 에러가 나오는 통에 진도를 나가지 못했었습니다. 도통 문제가 무엇인지 모르겠더군요. git에서 샘플 소스를 받아서 진행해도 마찬가지 결과가 나오기에 문제를 버전으라 생각했습니다.
책에서는 3.6을 기준으로 설명되어 있으나 3.X 버전이라면 문제 없을 것이라 했지만, 제가 사용하고 있는 버전은 3.7이어서 문제가 있었나 싶어 버전을 내려봤지만, 역시나 문제가 개선되질 않았었습니다. 구글링을 통해 알게된 해결법중에 proxy server 설정이 문제가 되는 경우에 동일한 현상이 있다는 것을 알게 되었으며 터미널에서 다음을 실행시켜 문제점을 해결하게 되었습니다. 역시 구글!!!
/Applications/Python\ 3.6/Install\ Certificates.command
상기 명령어를 통해 정확한 이유는 알지 못한 상태에서 샘플 소스는 제대로 실행되는 것을 확인할 수 있었습니다. 어디서 꼬인건지는 결국 찾질 못했습니다만 문제가 해결되었으니 만사OK. 다시 진도를 나갔습니다. 역시 프로그램이 알려주는 에러에는 다 이유가 있는거였습니다.
편집은 여백도 많은 편이고 행간을 넓게 활용하고 있어 읽는데는 그리 많은 시간을 요하지는 않습니다. 저처럼 중간에 갑작스런 에러와 조우하지 않는다면 말이죠.
책을 읽으면서 느낀건 초보자 수준에서 자신이 필요로 하는 정보를 취합하기 위해 필요한 기능들이 잘 정리되어 있다는 것이었습니다. 최소한 책을 따라해 보고, 수중에 소스가 남아있다면 조금만 응용하면 일정수준의 정보를 나름대로 뽑아볼 수 있겠다는 결론을 얻을 수 있었습니다.
아쉽게도 직업적으로 봤을때 개인적으로는 프론트에 국한된 작업을 하며 대량의 정보를 다루는 작업은 하지 않는만큼, 저한테 있어서 크롤링은 활용성이 떨어진다는 결론을 내릴 수 있었는데요. 숫자를 많이 다루거나 통계성 데이타를 다루시는 분중에서 프로그램을 접해본적은 없지만 작업을 단순화시키는 과정을 알고 싶거나 자기만의 정보를 만들고 싶으신 분들이라면 일독을 권하고 싶다는 생각이 들었습니다.
역시나 사람의 손을 거치는 작업인 만큼 실수가 없을 순 없죠. 아쉬운점은 바로 옆페이지에서는 json_obj 를 사용하더니 갑자기 json 으로 바뀌어 있다가 설명문에는 또다시 json_obj가 나오는 등 검토가 부족했던 부분이 눈에 띄기도 했습니다. 뭐 이정도는 공부하는 사람이 알아서 대처해야겠지만 이왕 읽는 책, 술술술 멈추는 곳 없이 진행되었으면 하는 바램은 어쩔수 없는것 같습니다.