HTML 기초부터 고수들의 스크래핑 비법까지, 모두 알려드리겠습니다.
파이썬 활용 세 번째 시간!
많은 분들이 파이썬 기초 개념까지는 잘 배우지만
어떻게 초보가 아닌 중급자 실력을 가질 수 있는지,
파이썬을 가지고 무엇을 할 수 있는지에 대해
어려움을 겪고 계십니다
그런 분들을 위해 다양하면서도 쓸모 있는
총 8개의 실전 프로젝트를 만들며
실력을 키울 수 있는 강좌를 제작했습니다
세 번째 시간에는 웹 스크래핑과 관련된
제 모든 비법을 공개하려 합니다
웹 스크래핑?
🐺 "나 엄마야, 문 좀 열어줘"
🐐 "손을 내밀어 보세요"
🐺
서론이 길었습니다!
🐐
저 서버를 어떻게든 공략을 해야 해요
스크래핑 VS 크롤링
여러분이 게스트라면 어떻게 하시겠어요?
아마 이것저것 따지지 않고
모조리 책을 최대한 빨리 담으려고 할겁니다
그럼 여러분은 아마도 수업시간에 배운
중요한 내용이나 외우기 어려운 공식,
영어 단어 같은 것들을 참고하기 쉬운 형태로
빼곡히 적겠지요.
이게 바로 웹 스크래핑입니다.
웹 크롤링과 다르죠?
우리가 배울 내용?
↑상위 1~5페이지 내에서 리뷰가 100건 이상,
평점 4.5점 이상이고 Apple 제품과 광고 상품은
제외한 목록을 가져오는 실습입니다
(절대 Apple이 싫다는 건 아니고 연습용이에요!)
이미지를 다운로드 받는 연습도 해볼 거에요
제가 영화를 굉장히 좋아하는데 어떤 영화를 보면
좋을지 결정장애가 있어서 그냥 최근 5년간 관객 수가
가장 많은 상위 5개 영화, 총 25개 영화 포스터 이미지를
다운받아놓고 그중 아무거나 선택을 하려 합니다
이 이미지를 각각 저장하려면 굉장히 많은 시간과
클릭질이 필요하지만, 스크래핑 기술을 이용하면
몇 줄 안되는 코드로 파일명까지 내가
원하는 대로 저장할 수 있게 되지요
어떤 데이터들은 가져온 뒤 엑셀로 관리 및 추가해야 합니다
그럴땐 간단하게 csv 형태로 파일을 만들면
바로 엑셀에서 열어볼 수도 있어요
네이버 금융에서 코스피 시가총액 순위 정보
모두 가져오는 실습까지 진행해볼 겁니다
하지만...
늘 그랬듯 우리는 길을 찾을 겁니다
때론 로그인이 필요하거나 웹페이지에서
어떤 동작을 해야만 내가 원하는 데이터를
가져올 수도 있습니다
동적 웹페이지는 Selenium(셀레니움, 셀레늄)이란
웹 테스트 자동화 프레임워크를 이용해서
직접 브라우저를 자동으로 컨트롤 할 수 있습니다
이전의 방법들이 잘 안 될 때,
Selenium으로 하면 웬만하면 해결이 될 겁니다
가령 구글 무비 페이지에서 인기차트 영화 중
현재 할인 중인 영화 정보만 가져오고 싶은데
여긴 스크롤을 내려야만 다음 목록이 불러와집니다
또는 네이버 항공권은 내가 원하는 일정을 입력하고
항공권 조회 버튼을 클릭하면 한참 로딩한 뒤 목록이 나타나죠
Selenium을 쓸 때도 이런 부분에 대해서는
오류를 줄이기 위해 좀 더 섬세히 접근해야 합니다
(물론 강의에서 모두 알려드립니다)
웹 스크래핑을 배우려면 사전지식이 필요한데요,
기본적으로 웹에 대해서 이해를 해야 하니
간단히 HTML, XPath에 대해서 공부하고,
크롬(Google Chrome)을 활용하기 때문에
크롬 및 개발자도구 이용 방법도 설명드릴 겁니다
스크래핑 과정에 정규식이 필요할 수도 있어서
아주 가볍게 언급하기 때문에 앞부분 이론 설명이
조금 길어서 지루할 수 있지만 이것만 끝나면
다양한 페이지에 대해 많은 실습이 이루어지므로
조금만 잘 참고 따라와주시면 좋겠습니다
바쁘시거나 핵심만 알고싶다 하시는 분은
이 부분만 봐도 강의 전반적인 내용은 파악 가능합니다
물론 이번에도 퀴즈를 드리지요!
다음 부동산 매물에서 검색한 결과 정보를
직접 여러분이 스크래핑 해오는 시간을 가져보구요,
마지막으로는 프로젝트를 진행합니다
프로젝트 주제는 "나만의 가상 비서" 인데요,
제가 매일 아침에 일어나서 날씨를 확인하고,
주요 뉴스 및 IT 분야 뉴스를 읽는 것을
쉽게 해주는 프로그램을 만들겁니다
하는 김에 1일 1영어 학습을 위해
매일 새로운 영어 회화 지문을 가져와봅시다
클릭 한 번이면 이 모든 정보들이
제가 원하는 형태로 가져와지는 것이죠
굉장히 편하겠죠? ^^
링크를 클릭하면 바로 뉴스 기사를 읽을 수 있게 됩니다
이번 주제에서 다루지는 않지만,
위에서 가져온 데이터를 이메일이나 카톡 등으로
보내는 방법까지 적용한다면 매일 아침
아주 손쉽게 정보를 얻을 수 있을 겁니다
망설이지 말고 바로 시작하세요
나도코딩
파이썬 기초 문법을 배우신 후
실력을 쌓고 싶으신 분들이라면
지금 바로 웹 스크래핑을 배워보세요
이 강좌 하나면 충분합니다
시작이 반이니까,
나도코딩은 무료니까!