在 Web 自動化領域,Selenium Webdriver 是用於網頁導航和互動的值得信賴的工具。自動化任務時面臨的一個常見挑戰是向下捲動網頁以存取其他內容。本文深入探討了在 Python 中使用 Selenium Webdriver 向下捲動的各種方法。
要捲動到頁面上的特定高度,請使用以下語法:
driver.execute_script("window.scrollTo(0, Y)")
其中Y 表示所需的高度(以像素為單位)。例如,要向下捲動到1080 像素的高度(全高清顯示器的高度),您可以使用:
driver.execute_script("window.scrollTo(0, 1080)")
到捲動到頁面的最底部,執行以下程式碼:
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
此指令可確保您到達頁面的結尾
對於使用無限滾動的網頁(例如社交媒體來源),您需要實現自訂滾動機制:
SCROLL_PAUSE_TIME = 0.5 # Get the initial scroll height last_height = driver.execute_script("return document.body.scrollHeight") while True: # Scroll down to the bottom driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") # Allow time for the page to load time.sleep(SCROLL_PAUSE_TIME) # Calculate the new scroll height and compare it with the previous one new_height = driver.execute_script("return document.body.scrollHeight") if new_height == last_height: break last_height = new_height
If如果您願意,您可以在頁面上選擇一個元素並直接捲動到該元素:
label = driver.find_element_by_css_selector("body") label.send_keys(Keys.PAGE_DOWN)
透過選擇一個元素並傳送Keys.PAGE_DOWN 指令,頁面將向下捲動一頁。
以上是如何在 Python 中使用 Selenium Webdriver 捲動網頁?的詳細內容。更多資訊請關注PHP中文網其他相關文章!