반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 날짜 정규식
- 파이썬 가상환경 설치방법
- Uipath 설치방법
- 파이썬 가상환경 설치
- pycdc.exe
- 네이버커머스API
- 네이버 로그인 캡챠해결
- Uipath 기초
- Element is not clickable at point
- 왕초보 파이썬 실행
- 파이썬네이버부동산
- pywinauto
- 파이썬 환경설정
- venv 설치
- 파이썬 네이버 로그인
- pywinauto 윈도우
- pycdas.exe
- 커머스API
- 네이버부동산크롤링
- Selenium 셀렉터잡기
- 네이버 로그인 하기
- selenium
- uipath 입문
- UiPath
- 네이버 로그인 영수증 해결
- Python
- 가상환경설치
- pywinauto 윈도우제어
- 네이버매물크롤링
- vscode venv 설치
Archives
- Today
- Total
콘솔워크
[selenium] 자료가 바닥나기 전까지 늘어나는 화면에서 스크롤을 계속 내리는 함수 본문
반응형
selenium으로 크롤링을 하다보면 간혹 스크롤을 내릴때마다 자료가 추가되는 사이트가 있는데, 그 때 유용하게 쓰일 스크롤을 내리는 함수이다.
def repeat_scroll(self, driver):
#스크롤 내리기 전 위치
scroll_location = driver.execute_script("return document.body.scrollHeight")
while True:
#현재 스크롤의 가장 아래로 내림
driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")
#전체 스크롤이 늘어날 때까지 대기
time.sleep(2)
#늘어난 스크롤 높이
scroll_height = driver.execute_script("return document.body.scrollHeight")
#늘어난 스크롤 위치와 이동 전 위치 같으면(더 이상 스크롤이 늘어나지 않으면) 종료
if scroll_location == scroll_height:
break
#같지 않으면 스크롤 위치 값을 수정하여 같아질 때까지 반복
else:
#스크롤 위치값을 수정
scroll_location = driver.execute_script("return document.body.scrollHeight")
반응형