[크롤링][open api] - 네이버 영화 리뷰 크롤링 프로젝트

yeom yaloo·2022년 8월 9일
0


들어가기에 앞서

해당 포스팅은 "파이썬 생활미락형 프로젝트 - 김효실"님의 책을 보고 작성되었음을 알립니다.


3.1 목표

  • 눈에 보이는 정보를 파일 형태로 모아두자
  • 정보들을 파일 형태로 모아두기 위해서 크롤링 기법을 사용하고 네이버 영화 리뷰를 모아보도록 하자

3.2 사전 준비

  • 크롬 브라우저 설치
  • 크롤링에 필요한 라이브러리 설치하기
    pip install bs4
    pip install lxml
    (python 파일이 있는 곳을 찾아서 다운받아 주어야 합니다. 앞선 포스팅에 이 방법이 있습니다.)

3.3 사전 지식 쌓기

[크롤링이란?]

  • 크롤링은 검색 엔진(네이버, 구글 등)의 데이터 수집 방법을 웹 크롤링이라고 합니다.
  • 웹에 존재하는 사이트를 일일이 방문, 그 내용의 복사본을 저장하고 수집된 정보들은 재가공하여 사용자들이 원하는 검색 결과를 제공합니다.

[크롤링 방법]

  1. 웹 페이지 정보를 가져온다
  2. HTML 소스를 파싱(=분석)하여 원하는 정보를 얻는다.

beautifulSoup 라이브러리

  • 크롤링에 도움을 주는 라이브러리로 html 코드를 트리 구조로 변환시켜줍니다.

3.4 구현하기

[구현 순서]

  1. 웹퍼이지 정보 가져오기
  2. htmp 소스를 파싱(=분석)하여 원하는 정보를 얻기
  3. 전체 코드 완성하기

1. 웹페이지 정보 가져오기

import requests

from bs4 import BeautifulSoup

#헤어질 결심 네이버 영화 리뷰 링크
url = "https://movie.naver.com/movie/bi/mi/review.naver?code=198413"


# html 소스 가져오기
res = request.get('url')

2. html 소스 파싱(=분석)해서 원하는 정보 얻기

import requests
from bs4 import BeautifulSoup

#헤어질 결심 네이버 영화 리뷰 링크
url = "https://movie.naver.com/movie/bi/mi/review.naver?code=198413"


# html 소스 가져오기
res = requests.get('url')

soup = BeautifulSoup(res.text, 'lxml')

ul = soup.find('ul', class_ = "rvw_list_area")
li_list = ul.find_all('li')

cnt = 0
for i in li_list:
    cnt += 1
    print(f"[{cnt}th]", i.a.string)
  • 해당 url의 리스트에 a테그에 있는 text는 리뷰 제목을 가져온다.

요약 & 정리

  • 크롤링은 웹 페이지의 복사본을 만드는 기법으로 복사본을 만들기 위해 웹 페이지 정보를 가져오고 필요한 정보를 얻는 위의 두 단계가 필요합니다.
profile
즐겁고 괴로운 개발😎

0개의 댓글