김대리 이제 크롤링이 뭔지 잘 이해했어.
크롤링이란 웹페이지 코드를 가져오는 것이고, 우리는 거기서 필요한 데이터를 뽑아서 쓸수 있다는 것이었지.
웹페이지 구성도 동적페이지와 정적페이지로 구분할 수 있는 거고.
오늘은 그 중에 정적페이지인 네이버 뉴스를 크롤링 할 꺼란 거지"
"오!, 잘 정리하셨어요.
어제 말씀 드렸던, 네이버 뉴스에 올라온 기사 제목을 가져와 볼꺼예요.
크롤링은 파이썬으로 할 껀데, 여기에 사용되는 크롤링 라이브러리로 주요한 2개가 있어요.
먼저 웹페이지를 가져오는 request 가 있고, 두번째는 가져온 웹페이지는 파싱에 사용하는 "BeautifulSoup" 이 있어요"
크롤링은 쥬피터노트북으로 할께요.
쥬피터노트북을 실행해 주세요.
웹페이지가 하나 열렸죠. 주소창을 보면 "http://localhost:8888/" 이렇게 되어 있죠."
"이렇게 하면 되는 거지. 근데, 파싱 한번만 더 설명해 줘."
"예. 페이지는 잘 나오네요. 파싱이 뭐냐면요.
웹페이지의 구조를 보고 원하는 부분을 분리 추출 하는 작업을 이야기 하는 거예요.
예를 들어 여기 '다음(https://www.daum.net/)' 초기 화면을 보시면 여러개 블럭으로 나뉘어져 있다는 것을
아실 수 있죠.
그런 구조를 분석하여 필요한 영역을 골라내서 작업을 파싱이라고 해요."
"계속 진행 할께요.
우리가 크롤링할 네이버 뉴스 URL은 'https://search.naver.com/search.naver?where=news&sm=tab_jum&query=' 여요.
'query=' 부분에 검색어를 넣으면 검색이 되거든요.
코로나 함 검색해 볼까요.
'query=코로나'를 넣으면 전체 URL이
https://search.naver.com/search.naver?where=news&sm=tab_jum&query=코로나
이 되죠.
엔터를 치면 '코로나' 뉴스 검색 결과가 나오는 것이 보이시죠."
여기서 기사 제목인
- 식약처, ‘코로나19 백신 신속 국가출하승인 정보집’ 발간
- JW중외제약 "악템라, 코로나19 치료 건강보험 적용"
- ...
을 수집해 볼 께요.
수집은
- 라이브러리 Import
- URL 생성
- 페이지 수집
- 파싱
- 뉴스 제목 추출
순서로 진행될 꺼예요."