Python Selenium 浏览器滚动

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)  

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值