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)