네이버 현재 상영중인 영화에 대한 데이터를 크롤링 하기(https://movie.naver.com/movie/running/current.nhn)

1. 영화의 기본정보 크롤링하기

제목,네티즌 평점, 개요(장르), 감독, 출연에 대한 정보를 크롤링.

import requests
from bs4 import BeautifulSoup
url='<https://movie.naver.com/movie/running/current.nhn>'
raw=requests.get(url)
html=BeautifulSoup(raw.text,'html.parser') #html 분석하기
movies=html.select('dl.lst_dsc')
#공통된 선택자를 찾는 것이 중요

검사'를 이용하면 쉽고 빠르게 선택자를 찾을 수 있다

선택자를 점검하고싶다면 ctrl+'f'를 사용해 확인할 수 있다!

movies=html.select('dl.lst_dsc')#선택자로 요소 여러개를 리스트로 추출합니다
for i in movies:
    title= i.select_one('dt.tit a').text
    #text처리를하지않으면 <a href="/movie/bi/mi/basic.nhn?code=190979">월성</a> 이런 결과가 나옴.
    score=i.select_one('div.star_t1 span.num').text
    score=float(score)
    #8.5보다 높은 평점을 가진 영화의 데이터만 수집하고싶어요!
    if score<8.5:
        continue
    #     이밑에있는 for 문작업 하지않고 브레이크는 그for문을 나가는것
'.info_txt1 dd:nth-of-type()'
    # .info_txt1 아래의 dd는 총 3개가있는데 그 순서는 장르 감독 배우순으로 같다.
    genre=i.select('.info_txt1 dd:nth-of-type(1) a')
    directors=i.select('.info_txt1 dd:nth-of-type(2) a')
    actors=i.select('.info_txt1 dd:nth-of-type(3) a')
    print('제목:',title,'평점:', score)
    print('장르:')
    for g in genre:
        print(g.text)
    print('감독:')
    for d in directors:
        print(d.text)
    print('배우:')
    for a in actors:
        print(a.text)
    print('------------')
제목: 위대한 쇼맨 평점: 9.39
장르:
드라마
뮤지컬
감독:
마이클 그레이시
배우:
휴 잭맨
잭 에프론
미셸 윌리엄스
레베카 퍼거슨
젠데이아 콜먼
------------
제목: 카페 벨에포크 평점: 8.71
장르:
코미디
드라마
감독:
니콜라스 베도스
배우:
다니엘 오떼유
기욤 까네
도리아 틸리에
화니 아르당

2. 평점, 영화 한줄평 수집하기

import requests
from bs4 import BeautifulSoup
url='<https://movie.naver.com/movie/running/current.nhn>'
raw=requests.get(url)
html=BeautifulSoup(raw.text,'html.parser')
movies=html.select('dl.lst_dsc')