파이썬, selenium 을 사용하여 네이버 기사의 댓글을 가져오는 소스이다.
1. 네이버 기사 페이지 오픈
2. 댓글 더보기 클릭
3. 클린봇 해제 (모든 댓글을 볼 수 있도록 설정)
4. 마지막 댓글이 나올때까지 더보기 클릭
5. 기사제목, 시간, 성비, 연령대 추출
5. 댓글 추출
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from webdriver_manager.chrome import ChromeDriverManager
import time
url = "https://news.naver.com/main/read.naver?mode=LSD&mid=shm&sid1=100&oid=015&aid=0004648342"
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.implicitly_wait(30)
driver.get(url)
#댓글 더보기 클릭
btn_more = driver.find_element(By.CSS_SELECTOR, 'a.u_cbox_btn_view_comment')
btn_more.click()
#클린봇 해제하여 모든 댓글을 볼 수 있도록 설정
cleanbot = driver.find_element(By.CSS_SELECTOR, 'a.u_cbox_cleanbot_setbutton')
cleanbot.click()
time.sleep(1)
cleanbot_disable = driver.find_element(By.XPATH,"//input[@id='cleanbot_dialog_checkbox_cbox_module']")
cleanbot_disable.click()
time.sleep(1)
cleanbot_confirm = driver.find_element(By.CSS_SELECTOR, 'div.u_cbox_layer_cleanbot2_extra')
cleanbot_confirm.click()
time.sleep(1)
#더보기 클릭
while True:
try:
btn_more = driver.find_element(By.CSS_SELECTOR, 'a.u_cbox_btn_more')
btn_more.click()
time.sleep(1)
except:
break
# 기사제목 추출
article_head = driver.find_elements(By.CSS_SELECTOR, 'div.article_info > h3 > a')
print("기사 제목 : " + article_head[0].text)
# 기사시간 추출
article_time = driver.find_elements(By.CSS_SELECTOR, 'div.sponsor > span.t11')
print("기사 등록 시간 : " + article_time[0].text)
# 성비와 연령대 추출
per = driver.find_elements(By.CSS_SELECTOR, 'span.u_cbox_chart_per')
print("남자 성비 : " + per[0].text)
print("여자 성비 : " + per[1].text)
print("10대 : " + per[2].text)
print("20대 : " + per[3].text)
print("30대 : " + per[4].text)
print("40대 : " + per[5].text)
print("50대 : " + per[6].text)
print("60대 이상 : " + per[7].text)
#댓글추출
contents = driver.find_elements(By.CSS_SELECTOR, 'span.u_cbox_contents')
cnt = 1
for content in contents:
print(cnt, " : ", content.text)
cnt+=1
'파이썬' 카테고리의 다른 글
for문 사용법 - 파이썬 (0) | 2024.07.08 |
---|---|
다른 파일에 있는 함수 사용하기 - 파이썬 (0) | 2024.07.03 |
유튜브 정보가져오기 - 파이썬, pafy (0) | 2024.07.03 |
유튜브 조회수 가져오기 - 파이썬, 크롤링 (0) | 2024.07.03 |
kakao tv 재생수 가져오기 - 파이썬, 크롤링 (0) | 2024.07.03 |