selenium 调整浏览器滚动条位置

虽然 webdriver 提供了操作浏览器的前进和后退方法,但对于浏览器滚动条并没有提供相应的操作方法。在这种情况下,就可以借助 javascript 来控制浏览器的滚动条。

webdriver 执行 javascript 代码是通过 execute_script() 方法来操作的。

相关代码如下:

from selenium import webdriver

browser = webdriver.Chrome()
browser.get("http://www.baidu.com")
browser.set_window_size(600, 600)

browser.find_element_by_id("kw").send_keys("selenium")
browser.find_element_by_id("su").click()

js = "window.scrollTo(100, 450);"
browser.execute_script(js)

browser.quit()

通过浏览器打开百度进行搜索,并且提前通过 set_window_size()方法将浏览器窗口设置为固定宽高显示,目的是让窗口出现水平和垂直滚动条。然后通过 execute_script() 方法执行 javascript 代码来移动滚动条的位置。