继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

selenium中JS如何处理滚动条

慕姐8265434
关注TA
已关注
手记 1268
粉丝 222
获赞 1065

前言

什么是JS?

JS就是JavaScript;

JavaScript 是世界上最流行的脚本语言;

JavaScript 是属于 web 的语言,它适用于 PC、笔记本电脑、平板电脑和移动电话;

JavaScript 被设计为向 HTML 页面增加交互性;

许多 HTML 开发者都不是程序员,但是 JavaScript 却拥有非常简单的语法。几乎每个人都有能力将小的 JavaScript 片段添加到网页中。

JS传送门:http://www.w3school.com.cn/b.asp

一、JS处理滚动条问题

1、滚动条回到顶部:

js="var q=document.getElementById('id').scrollTop=0"

driver.execute_script(js)

或者

js="var q=document.documentElement.scrollTop=0"

driver.execute_script(js)

2、滚动条拉到底部:

js="var q=document.getElementById('id').scrollTop=10000"

driver.execute_script(js)

或者

js="var q=document.documentElement.scrollTop=10000"

driver.execute_script(js)

3、滚动条拉到指定位置(具体元素):

target = driver.find_element_by_id("id_keypair")

driver.execute_script("arguments[0].scrollIntoView();", target)

4、通过模拟键盘DOWN()来拖动:

driver.find_element_by_id("id").send_keys(Keys.DOWN)

webp

image.png

5、scrollTo函数

--scrollHeight 获取对象的滚动高度。

--scrollLeft 设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离。

--scrollTop 设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离。

--scrollWidth 获取对象的滚动宽度。

滚动到底部

js = "window.scrollTo(0,document.body.scrollHeight)"

driver.execute_script(js)

滚动到顶部

js = "window.scrollTo(0,0)"

driver.execute_script(js)

webp

image.png

二、参考代码

  #!/usr/bin/env python
  # -*- coding: utf-8 -*-
  # @File    : jss.py
  # @Software: PyCharm
 from selenium import webdriver  
 import time  
 from selenium.webdriver.common.keys import Keys  
 url = 'http://www.cnblogs.com/sanzangTst/'
 browser = webdriver.Firefox() 10 browser.get(url) 11 time.sleep(3) 12 # 拉到底部
 js="var q=document.documentElement.scrollTop=10000"
 browser.execute_script(js) 15 
 # 回到顶部
 js="var q=document.documentElement.scrollTop=0"
 browser.execute_script(js) 19 
 # 拖到指定位置
 target = browser.find_element_by_id("homepage1_HomePageDays_DaysList_ctl05_DayList_TitleUrl_0") browser.execute_script("arguments[0].scrollIntoView();", target)  
 #滚动到底部
 js = "window.scrollTo(0,document.body.scrollHeight)"
 browser.execute_script(js) 27 
 #滚动到顶部
 js = "window.scrollTo(0,0)"
 browser.execute_script(js)



作者:TeacherAilie
链接:https://www.jianshu.com/p/95e3f7cb6391


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP