중고나라
*selenium 활용한 크롤링
+frame 변환까지
*중고나라 키워드(+page)를 입력하면 키워드별 제목, url, 가격 등을 표로 일목요연하게 정리해서 보여주기...
-11.23~
현재 중고나라 맥북 프로의 글 제목만 크롤링 완료
추후 url, 가격 등의 정보 (+사진이 있으면 사진도)를 표로 (pandas 활용) 만들어서 업로드?
------------------------------------------
# vim 파일 활용해서
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("https://nid.naver.com/nidlogin.login")
# id 입력
id_input_element = driver.find_element_by_css_selector("#id")
id_input_element.send_keys("<id>")
# pw 입력
pw_input_element = driver.find_element_by_css_selector("#pw")
pw_input_element.send_keys("<password>")
# 네이버 로그인 완료 => 추후에 @로 만들어보기
submit_element = driver.find_element_by_css_selector(".btn_global")
submit_element.click()
keyword = input("찾으시려는 키워드를 입력하세요:")
n = int(input("찾으시려는 페이지 수를 입력하세요:"))
driver.get("http://cafe.naver.com/joonggonara.cafe?iframe_url=/ArticleList.nhn%3Fsearch.clubid=10050146%26search.boardtype=L%26viewType=pc")
css_selector = "input#topLayerQueryInput"
search_inpupt_element = driver.find_element_by_css_selector("input#topLayerQueryInput")
#키워드 입력
search_inpupt_element.send_keys(keyword)
#검색 버튼 눌러서 찾기
search_button_element = driver.find_element_by_css_selector(
"form[name='frmBoardSearch'] a"
)
search_button_element.click()
#프레임 변환
iframe_element = driver.find_element_by_css_selector("iframe#cafe_main")
driver.switch_to_frame(iframe_element)
# 다시 원래대로 frame 복귀
# driver.switch_to_default_content()
#글 제목/ 본문 찾기 (frame 내에서))
titles_whole = []
for i in range(n+1):
css_selector_page = "table.Nnavi a"
page_buttons= driver.find_elements_by_css_selector(css_selector_page)
page_buttons[n-1].click()
css_selector_title = "td.board-list "
title_elements_2 = driver.find_elements_by_css_selector("td.board-list")
for title_element_2 in title_elements_2:
title_text = title_element_2.text
titles_whole.append(title_text)
print(titles_whole+"\n")
# 완료;
# 추후 추가할 사항: 키워드/페이지를 입력하면 키워드/ 페이지별로 제목을 싸그리 크롤링
# 추가적으로 id가 겹치는 글은 제외할 수 있도록?
-------------------------------------------
'backend > 데이터분석' 카테고리의 다른 글
02_1. 사람인, 스펙업(네이버 까페) 인턴 정보 통합 시스템 (selenium, python) (0) | 2016.12.15 |
---|---|
project02.까페알바 (0) | 2016.11.20 |
project01. dios 구글 크롤링/ 11.19 (0) | 2016.11.19 |
Numpy 복습 (0) | 2016.11.12 |
파이썬 데이터 라이브러리 - 수찬님 강의 1일차 복습 (1/2), 파이썬 기초 (0) | 2016.11.08 |