짬내서 나홀로 - 크롤링(복습, 네이버 영화 조회순 순위)

테리·2022년 7월 21일
0

짬내서 나홀로

목록 보기
2/3
post-thumbnail
from selenium import webdriver
driver = webdriver.Chrome('/Users/pdj/Desktop/Untitled Folder/chromedriver')
driver.get('https://movie.naver.com')

#영화 랭킹 클릭
driver.find_element('xpath','//*[@id="scrollbar"]/div[1]/div/div/ul/li[3]/a').click()
#1위 영화 제목 가져오기
driver.find_element('xpath','//*[@id="old_content"]/table/tbody/tr[2]/td[2]/div/a').text

예외값 처리를 위해 추가

from selenium.common.exceptions import NoSuchElementException

판다스 라이브러리 활용을 위해 추가

import pandas as pd
product_list = []

for i in range(1,56):
    try:
        movie_name = driver.find_element('xpath','//*[@id="old_content"]/table/tbody/tr['+str(i)+']/td[2]/div/a').text
        print(movie_name)
    except NoSuchElementException:
        print('-----') #movie_name = '-----'로 해서 예외일때도 movie_name에 -----값을 넣어줄 수 있다. 하지만 이후 중복처리를 쉽게 하기 위해서 이렇게 함
    product_list.append(movie_name)

product_list 리스트에서 첫번째 값 제거

#가장 첫번째 값도 예외 값이어서 이걸 안하면 가장 첫번째 값에 가장 마지막 값인 '굿 럭 투 유, 리오 그랜드' 가 붙음
del product_list[0] 
product_list

예외 처리된 순번의 값들이 현재 중복값으로 대체되어 남아있음

중복 제거

movie_list = []
for j in product_list:
    if j not in movie_list:
        movie_list.append(j)
print(movie_list)

pandas 라이브러리의 DataFrame 사용

#기본 index를 사용하면 0부터 시작하기에 1부터 시작하는 index로 변경
index_list = list(range(1,51)) 
pd.DataFrame({'영화 제묵': movie_list}, index = index_list)

profile
영화 좋아합니다

0개의 댓글