(비제이퍼블릭 크롤링 베스트셀러 '한입에 웹크롤링' 저자 직강!)

 

저서 : http://yes24.com/24/Goods/64573282

유튜브 채널 : https://goo.gl/NuU9Xz 

 

 

 

세 줄 요약

 

1. 2019년 4월 27일부터 시작되는 빅데이터 수집 크롤러, 에러 핸들링과 분산처리, 데이터 시각화를 배울 수 있는 파이썬 중급과정 6주 수업이 오픈했습니다!

 

2. 강남역 4분거리 강의실에서 매주 토요일 오전 10시부터 진행됩니다! 

  

3. 데이터 분석가를 꿈꾼다면 꼭 알아야할 대량 데이터 수집과 처리를 담당하는 웹크롤러, 분산처리기법, 데이터 시각화 등을 저렴한 가격에 배워보세요!

 

4. 단순 정보 전달보다는 직접 프로젝트를 처음부터 해낼 수 있는 사람을 양성하는게 코딩애플 파이썬 강의의 목표입니다!

 

더 자세한 정보 & 신청은 codingapple.com 

 

 

 

 

 

 

레벨 & 난이도

 

파이썬 기초강좌 (링크)를 수강하셨던 분이나

 

파이썬 기초 문법을 알고 간단한 웹크롤러 프로젝트 한두개 정도 만들어보셨던 분들이 참여가능합니다!

 

https://www.youtube.com/playlist?list=PLAdQRRy4vtQRzdg7D9n1rkDp9DIeWpBQ9 파이썬 웹크롤러 만들기 재생목록의 

20~30강 정도의 내용 듣고 따라해보실 정도면 충분합니다! 

전부 10분내외의 강의라 무리없으실거에요!

 

 

 

 

 

 

특징

 

- 파이썬 배운다고 문법만 주구장창 배우셨나요? 코딩애플은 맥락없는 문법암기과정은 지양합니다. 코딩애플의 모든 교육과정은 Project-based Learning 입니다.

 

- 직접 코드 짜보는 시간이 많다보니 막히는 부분은 바로바로 물어보실 수 있습니다.

 

- 직접 빅데이터수집/저장/분석 프로젝트를 기획하고 진행할 수 있는 사람을 만드는게 강의 목표입니다. 

  

- 직장인, 대학생이면 꼭 알아야할 파이썬을 착한 가격으로 입문해보세요! 실제 타 업체대비 30% 정도 수강료가 저렴합니다.

 

 

 

 

 

  

강의내용 핵심요약 

 

 

파이썬 문법책만 뗐다고 실전에서 파이썬 써먹는 인재가 되는게 아닙니다.

 

대량의 데이터를 다루는 진짜 실무 프로젝트는 제작해보셔야죠!

 

아직 파이썬 데이터업무 경험이 부족하거나 실력을 쌓고싶은 분들을 위해 정말 실무에서 다룰법한 내용들을 준비했습니다.

 

 

- 기존과는 다른 '대량'의 데이터를 수집하고 전처리하기 위한 방법

 

- 일반적으로 크롤링이 불가능한 페이지를 강제로 크롤링하는 법

 

- 서브페이지 존재 등 데이터 수집시 depth가 2단계 이상으로 깊어질 경우 

 

- CPU 병렬처리로 수집, 분석업무시간 단축 하는 법

 

- 엑셀로 보낼 필요도없이 파이썬에서 해결하는 데이터 분석과 시각화

 

- 딥러닝을 대비하는 이미지 수집, 에러핸들링 등을 준비했습니다. 

 

 

 

  

 

 

 

 

 

 

 

 

핵심내용 1. 셀레니움 Selenium을 이용한 데이터 수집 능력 강화  

 


파이썬 책보고 Requests 설치해서 웹페이지 데이터 수집 몇번 해보신 분들 많으시죠?

 

하지만 실전에서는 어려움이 많으셨을 거에요.  

 

책에 나온대로 데이터수집이 불가능한 사이트가 여러곳 있기 때문에 실제 활용부분에서 언제나 좌절하곤 합니다. 

 

여기서 사용할 수 있는게 바로 파이썬 셀레니움!

 

파이썬으로 크롬브라우저를 열어서 실제 사용자처럼 사이트 내에서 로그인, 클릭, 스크롤, 페이지이동을 구현할 수 있는 라이브러리입니다.

 

실제 사람처럼 클릭 등을 흉내내며 수집하기 때문에 

  

구조가 복잡한 사이트로그인이 필요했던 사이트도 쉽게 수집할 수 있게 되죠!

 

 

 

 

여러분 Selenium 나중에 웹관련 업무하실 때도 활용분야가 굉장히 많습니다.

 

웹 업무 자동화 시스템 만들 때 가장 중요하게 다루는 분야가 바로 Selenium인데, 

 

나중에 활용하시면

 

카페, 블로그 자동 글작성

 

이메일 또는 게시판 첨부파일 자동 저장

 

수강신청 등 웹 매크로 제작

 

자동검색 .. 등 

  

등 다양한 웹업무를 자동화시키실 수 있습니다. 

 

구글 찾아봐도 이런 예제 별로 없으니 이번 기회에 제대로 배우신 후 나중에 한번 여러분 업무에 활용해보세요!

 

그렇다고 검색랭킹 조작, 연관검색어작업 같은 곳에 악용하진 맙시다! 

 

 

 

 

 

 

 

 

 

 

핵심내용 2. 파이썬 병렬처리를 이용한 빠른 데이터 수집과 저장

 

 

파이썬 기초 문법 깨작 배웠다고 빅데이터를 다룰 수 있는건 아닙니다.

 

10만단위 이상의 row를 가진 데이터를 수집하고 파싱려면 어떻게 해야할까요. 

 

단순 크롤링, 파싱, 저장작업을 파이썬만으로 진행할 경우 column이 많으면 정말 컴퓨터 10시간 이상 켜놔야 할 수도 있습니다.

 

"그럼 Spark 같은 분산처리 시스템을 이용해야하나요?"

 

(그러면 좋겠지만 10만개로는 배보다 배꼽이 더 크고요)

 

애초에 AWS 서버를 빌리거나 하둡, Spark 같은거 어디서 분산처리 플랫폼 들어본거 가지고 이리저리 찾다보면 

 

거대한 Learning curve 장벽에 막혀 빅데이터 수집의 원대한 꿈은 저 멀리 사라지게 됩니다.  

 

 

 

 

다행히 파이썬 내에서도 프로세스 병렬처리, 분산처리가 가능하기 때문에 걱정 안하셔도 됩니다. 

  

기존에 수 시간이 걸리던 10만개 이상의 데이터 수집, 파싱작업 시간을 n 분의 1로 단축시키는 멀티스레딩 기법을 준비했습니다.

 

이번 강의에서는 데이터 수집, 텍스트 마이닝과 관련한 분산처리 기법을 배워보게 될텐데, 

 

나중에 Pandas 등 분석 쪽에서도 분산처리를 활용하실 수 있으니 이번 기회에 꼭 배우고 가시면 되겠습니다. 

 

 

 

 

 

 

 

 

 

 

핵심내용 3. 파이썬을 이용해 한 큐에 처리하는 데이터 시각화

 

 

이번 강의에선 저번 기초 파이썬 데이터 수집/저장 강의에서 다뤄보지 못했던 데이터 활용 부분을 다뤄보게 될텐데  

 

PyPlot 라이브러리를 통해서 간단한 Scatter plot 그리기 등 데이터 시각화 하는 법을 잠깐 배워보도록 합시다.

  

데이터 분석하는거 아직도 엑셀 사용하시는 분들 많으시죠? 

 

5만개 이상의 row를 다룰 때 엑셀은 COUNTIF 하나만 해도 CPU 점유율이 99%를 찍으며 컴퓨터가 폭발 직전이 되지만

 

파이썬은 MATLAB 과 속도차이가 별반 없을 정도로 매우 쾌적하게 데이터 분석, 그리고 시각화 하실 수 있습니다.

 

이미 알고있던 파이썬 문법과 함수로 간단히 개발할 수 있으니 훨씬 더 편리하실거에요! 

 

  

 

  

 

 

 

핵심내용 4. 여러분의 프로젝트 제작능력을 향상시켜드릴 기타 내용 

 

 

- 카테고리와 서브페이지 링크 수집

 

대량의 데이터를 수집할 때 가장 어려운 점이 바로 '모든 카테고리 수집'과 데이터가 담긴 '세부 URL 링크'를 수집하는 일입니다.

 

3만개 페이지를 수집해야한다면 그 3만개의 페이지 링크를 수집해야하는데, 

 

링크가 숨겨져있다면요? 

 

링크가 세부페이지로 들어가야 확인할 수 있다면요?

 

진짜 데이터 수집 분석가들이 어떤 식으로 위와같은 실무 프로젝트를 진행하는지 알아봅시다. 

 

응용한다면 간단한 검색엔진도 만들 수 있죠!

 

  

 

- 이미지 수집은 어떻게하죠?

 

파이썬배웠다고 텐서플로우를 이용한 딥러닝 체험해보려고 강아지, 고양이 사진을 구분하는 프로그램을 제작하기로 결심했으나

 

강아지와 고양이 사진 몇천장을 수집하는 단계에서 막히셨을거라 봅니다.  

 

그렇다면 파이썬을 이용한 빠른 이미지수집 방법을 배워가도록 합니다.  

 

 

 

- 중간에 에러나면요?  

   

밤새 돌리고 내일 아침에 깔끔하게 데이터 수집 잘되어있겠지~ 라는 기대감에 컴퓨터 켜놓고 퇴근했으나

 

다음날 아침 중간에 에러를 하나 만나서 밤새 작업이 30%도 안되어있는 불상사가 많이 발생합니다. 

 

그래서 보다 더 완벽한 데이터 수집 프로그램을 만들기 위한 에러핸들링 기법을 준비했습니다. 

 

 

 

 

 

 

 

자주 묻는 질문 

 

 

Q. 저 요런 수준인데 수업 따라갈 수 있을까요?

A. 정확한 본인 레벨 판단이 어렵다면 카카오톡 플러스친구 @코딩애플로 카톡주시면 상담해드리겠습니다! 생각보다 그렇게 어려운 내용 가르치진 않습니다.

 

 

Q. 문법 잘 알아야하나요?

A. 함수, 자료형, 변수, import, for 반복문에 대한 사전 지식이 필요합니다. 가물가물하시면 수업시간에 적극 물어보시면 됩니다.

 

 

Q. CPU 좋은 노트북 필요한가요?

A. 아뇨 그냥 PyCharm 잘 돌아갈 정도면 됩니다. 설치해오세요!

 

 

 

 

 

 

 

 

 

커리큘럼

 

1주차 : 셀레니움(Selenium) 기초 : 파이썬으로 브라우저를 띄우자

- 파이썬으로 브라우저를 띄워서 데이터 수집하기

- 셀레니움 설치

- 원하는 요소 자동 클릭하게 만들기

- 셀레니움 재사용할 수 있게 모듈화하기

 

 

2주차 : 셀레니움(Selenium)으로 크롤링 하기

- 실제 클릭이 수반되어야 수집이 가능한 사이트 크롤링하기 

- 검색 등 조건 입력 후 페이지당 출력되는 결과 개수 만큼 자동클릭해보기

- 페이지별 클릭

- 페이지를 파일로 저장하기

 

 

3주차 : 멀티스레드로 빠르게 대량 서브페이지 데이터 수집하기

- 사이트 내의 페이지마다 서브페이지 링크 수집하기

- 목록에서 서브페이지 링크 수집하기

- 스레드 Thread 개념에 대해 배우기

- 멀티스레드를 이용해 10시간 작업 20분으로 단축시키기 

- 크롤링한 데이터를 분리해서 저장하기

 

 

4주차 : 이미지 수집과 저장

- 페이지에서 이미지 URL 수집하기

- 수집한 이미지의 URL을 이용해 페이지 내의 원하는 이미지 저장하기

- urlretrieve() 이용하는 법 배우기 

 

 

5주차 : 서브페이지에 들어가서 데이터를 파일로 저장하기

- 각 페이지별로 없는 내용은 에러처리 하기

 

 

6주차 : 데이터 시각화와 활용

- Pyplot을 이용한 데이터 시각화 

 

 더 자세한 정보는 codingapple.com

 상담문의 @카카오톡 플러스친구 코딩애플 검색 또는 홈페이지 방문!

 

 

 

 

김경록​ 선생님

 

- 현 코인거래소 백엔드 개발자  

- 전 Node, React 프론트엔드 개발자

- 전 Fast Campus VBA 입문 강사

- 정보문화사 'Node.js 200제', 한빛출판사 '웹 데이터 수집의 기술', '한입에 웹크롤링' 저술