목적
- 감정분석을 위해 네이버 영화평점을 크롤링 하는 파이썬 프로그램작성
- 무작위의 네이버 영화 평점별 리뷰 데이터 크롤링
https://movie.naver.com/movie/point/af/list.naver?
평점 : 네이버 영화
네티즌 평점과 리뷰 정보 제공
movie.naver.com
1. 관련 라이브러리 Import
import requests
from selenium import webdriver
import time
from bs4 import BeautifulSoup
import pandas as pd
import random
import urllib.parse as parse
from sqlalchemy import create_engine
import pymysql
from selenium.webdriver.common.keys import Keys
2. 반복문으로 1000페이지까지 크롤링진행
results = []
for i in range(1, 1001):
url = 'https://movie.naver.com/movie/point/af/list.nhn?&page={}'.format(i)
r = requests.get(url)
bs = BeautifulSoup(r.text, "lxml")
trs = bs.select("table.list_netizen > tbody > tr")
for tr in trs: #다수의 평점
number = tr.select_one("td.ac.num").text
writer = tr.select_one("td.num > a.author").text
tr_data = tr.select_one("td.title")
title = tr_data.select_one("a").text
point = tr_data.select_one("div.list_netizen_score > em").text
if point =='1' or point =='2':
point = '1'
elif point =='3' or point =='4':
point = '2'
elif point =='5' or point =='6':
point = '3'
elif point =='7' or point =='8':
point = '4'
else:
point = '5'
# td class="title" 태그에서 a, div, br 태그 제거
# extract() 함수는 태그와 태그의 내용까지 모두 제거
[x.extract() for x in tr_data.select("a")]
[x.extract() for x in tr_data.select("div")]
[x.extract() for x in tr_data.select("br")]
content = tr_data.text.strip()
#리뷰가 없으면 건너뛰자
if content ==None:
continue
results.append(('네이버영화',point,content))
3. 필요한 컬럼 Select
df = pd.DataFrame(results, columns=['크롤링구분','평점','리뷰'])
df
4. 결과 Dataframe으로 출력
- 해당 데이터로 최신의 리뷰들로 학습데이터를 얻을수 있었음
- 꽤 많은 데이터를 Class(평점)분류 에 따라 수집할 수 있음
2023.02.01 - [IT/Python] - [Web크롤링] 감정분석을 위한 네이버영화 코멘트/평점 Python 크롤링
[Web크롤링] 감정분석을 위한 네이버영화 코멘트/평점 Python 크롤링
목적 - 감정분석을 위해 네이버 영화평점을 크롤링 하는 파이썬 프로그램작성 - 무작위의 네이버 영화 평점별 리뷰 데이터 크롤링 https://movie.naver.com/movie/point/af/list.naver? 평점 : 네이버 영화 네티
comemann.tistory.com
2023.02.01 - [IT/Python] - [Web크롤링] 감정분석을 위한 잡플레닛 코멘트/평점 Python 크롤링
[Web크롤링] 감정분석을 위한 잡플레닛 코멘트/평점 Python 크롤링
목적 - 잡플래닛의 기업리뷰정보를 크롤링 1. 필요사항 Import 및 잡플래닛 ID와 PW기입 - 잡플래닛은 로그인을 해야 리뷰가 보이는 사이트임 # step1.프로젝트에 필요한 패키지 불러오기 from bs4 import
comemann.tistory.com
2023.02.02 - [IT/Python] - [Web크롤링] 감정분석을 위한 네이버 쇼핑 코멘트/평점 Python 크롤링
[Web크롤링] 감정분석을 위한 네이버 쇼핑 코멘트/평점 Python 크롤링
목적 - 네이버 쇼핑의 '쇼핑몰리뷰'의 평점과 텍스트 크롤링 1. 필요사항 Import - 잡플래닛은 로그인을 해야 리뷰가 보이는 사이트임 # step1.프로젝트에 필요한 패키지 불러오기 from bs4 import Beautiful
comemann.tistory.com
'IT > Python' 카테고리의 다른 글
[국토부실거래가] 아파트 분양권 크롤링 API Python 개발 (0) | 2023.02.06 |
---|---|
[Web크롤링] 감정분석을 위한 네이버 쇼핑 코멘트/평점 Python 크롤링 (1) | 2023.02.02 |
[Web크롤링] 감정분석을 위한 잡플레닛 코멘트/평점 Python 크롤링 (0) | 2023.02.01 |
[OpenDart-1] Python으로 Dart기업정보 DataFrame으로 저장하기 (0) | 2023.01.30 |
[Python] 으로 mariaDB(Synology DB) 연결 및 SQL결과를 Dataframe으로 저장 (0) | 2023.01.27 |