지방이의 Data Science Lab

[Python] 셀레니움으로 카카오맵 크롤링하기 (1)스크롤 내리기 본문

Python Selenium/Web Crawling

[Python] 셀레니움으로 카카오맵 크롤링하기 (1)스크롤 내리기

[지현] 2019. 3. 6. 14:14

 

 

먼저 인지해야 할 점은

셀레니움 내에서 자동으로 스크롤을 계속 내려서 자동크롤링을 하고 싶은거라면

밑으로 내려가게 하는 방법은 존재하지 않는다

 


멀티플 스크롤중 우리가 원하는 하위 스크롤을 내리고자 한다면 미리 내리고 클레스를 알아야만 가능하다. 그래서 자동 크롤링을 실시하고자 하는거라면 이 방법은 적합하지 않다.

 

 

셀레니움을 실행할때 요소가 화면을 벗어나있으면 마우스 클릭을 할 수 없기 때문에 에러가 발생하고 실행되지 않는다. 

따라서, 스크롤을 내려서 화면안에 원하는 클릭이 들어가도록 해야 한다.

 

(https://selenium-python.readthedocs.io/locating-elements.html를 읽어보며 필요한 element선택하는 방법을 찾아볼 수 있다.)

 

크롤링을 하려면

 

 

스크롤을 내려서 장소더보기를 눌러 1페이지로 가야 한다. 

그러려면 일단 스크롤을 내려야 한다.

 

 

스크롤 맨 밑으로 가서 보면 올리브영 신촌대로점이 존재 하므로 코드에 입력해주면 된다.

1
2
3
4
from selenium.webdriver.common.keys import Keys
driver.execute_script("document.body.style.zoom='80%'")
elem=driver.find_element_by_partial_link_text("신촌대로점")
elem.send_keys(Keys.ENTER)

 


 

 

 

Comments