728x90
import requests
from bs4 import BeatifulSoup
import re


#자료구조(타이틀, 평점, 리뷰들을 담을 리스트를 만들어준다)
movie_title = []
movie_point = []
movie_review = []

#1이상 11미만범위로 10번
for n in range(1, 11): 
    req = request.get('https://movie.naver.com/movie/point/af/list.nhn?page='+str(n))
    html = req.text
    soup = BeautifulSoup(html, 'html.parser')

# DOM트리구조에서 원하는 데이터 뽑아오기 .(dot)은 클래스, #은 id
   titles = soup.select('.movie') 
points = soup.select('td.title > div > em')
reviews = soup.select('td.title')

# 뽑아온것들 리스트에 추가 해놓기
for dom in titles :
    moive_title.append(dom.text)
for dom in points : 
    movie_points.append(dom.text)
for dom in reviews:
    print(dom)
    content = dom.content[6]                #공백포함하여 인덱스0부터 인덱스6 7nth에 있는 겟
    content = re.sub("[\n\t]", "", content)    #해당 패턴(정규표현식,RegularExpression,re)을 사용해서 개행, 탭 문자제거하기 
    content = re.sub("신고", "", content)    #필요없는 문자열 날리고
    movie_review.append(content)



#이제는 보여주기        
for i in range(len(moview_title)):
    print('영화제목: ' movie_title[i])
    print('평점: ', movie_title[i))
    print('리뷰: ', movie_review[i])




#Error
HTTPConnectionError났었는데 요청할 URL주소의 오타로 인해 max retries초과하였음. 수정 후 제가동

태그(엘리먼트/노드/객체/오브젝트)와 태그 사이에 공백이 있다는 거 처음 알았다

+ Recent posts