1、用键盘右下角的 UP,DOWN 按键来处理页面滚动条,这种方法效率高
from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
# 访问百度
driver=webdriver.Chrome()
driver.get("http://www.baidu.com")
# 搜索
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()
time.sleep(3)
# 通过按上下键将页面滚动条拖到底部
driver.find_element_by_xpath("//*[@id='page']/a[10]").send_keys(Keys.DOWN)
print '将滚动条拉到底端'
time.sleep(2)
driver.find_element_by_xpath("//*[@id='s_tab']/a[9]").send_keys(Keys.UP)
print '将滚动条拉到上端'
time.sleep(2)
driver.find_element_by_xpath("//*[@id='con-ar']/div[3]/a").send_keys(Keys.DOWN)
print '将滚动条拉到中间'
2、调过 JS 脚本来处理滚动条,这种方法在 JS 动态页面下无效
# coding=utf-8
from selenium import webdriver
import time
# 访问百度
driver=webdriver.Firefox()
driver.get("http://www.baidu.com")
# 搜索
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()
time.sleep(3)
# 将页面滚动条拖到底部
js="var q=document.documentElement.scrollTop=100000"
driver.execute_script(js)
time.sleep(3)
# 将滚动条移动到页面的顶部
js="var q=document.documentElement.scrollTop=0"
driver.execute_script(js)
time.sleep(3)
# 将页面滚动条移动到页面任意位置,改变等于号后的数值即可
js="var q=document.documentElement.scrollTop=50"
driver.execute_script(js)