[Python] Selenium을 이용한 디씨인사이드 야옹이 갤러리 크롤링
Selenium 설치
sudo pip3 install selenium
Selenium docs
웹 드라이버 설치
- 웹 애플리케이션 자동화 테스트를 위한 오픈 소스 툴
- 운영체제에 맞게 다운로드 설치 파일 링크
브라우저 실행 및 URL 접속
- 야옹이 갤러리 URL : https://gall.dcinside.com/board/lists/?id=cat
- webdriver.Chrome(웹 드라이버 설치 경로)
from selenium import webdriver
driver = webdriver.Chrome("./chromedriver")
url = "http://gall.dcinside.com/board/lists/?id=cat"
오늘 올라온 게시글 제목 수집
from selenium import webdriver
from selenium.webdriver import ActionChains
def get_title_of_post(driver,url):
title_list = []
driver.get(url)
posts = driver.find_elements_by_class_name("ub-content")
for i in range(0,len(posts)):
if posts[i].find_element_by_class_name("gall_date").text == "10/19":
post_title = posts[i].find_element_by_tag_name("a").text
title_list.append(post_title)
return title_list
def isTodayPostOnPage(driver,url,date):
driver.get(url)
posts = driver.find_elements_by_class_name("gall_date")
for i in range(0,len(posts)):
if posts[i].text == date:
return True
return False
def main():
driver = webdriver.Chrome("./chromedriver")
url = "http://gall.dcinside.com/board/lists?id=cat&page="
page_Number = 1
while True:
if isTodayPostOnPage(driver,url+str(page_Number),"오늘 날짜 ex)10/19"):
print(get_title_of_post(driver,url+str(page_Number)))
page_Number+=1
else:
break
if __name__ == "__main__":
main()