1. Console 调试Js代码
- 说明:F12 打开 开发者工具,Console页面可调试Js代码
2. 控制滚动调高度
- 顶部:document.documentElement.scrollTop=0 、window.scrollTo(0,0)
- 底部:document.documentElement.scrollTop=100000 、window.scrollTo(0,document.body.scrollHeight)
完整代码
1. # -*-coding:utf-8一*- 2. # @Time:2021/1/15 3. # @Author: 大海 4. 5. from selenium import webdriver 6. from time import sleep 7. 8. # 访问百度 9. driver = webdriver.Chrome() 10. driver.get("http://www.baidu.com") 11. 12. # 设置浏览器窗口大小 13. driver.maximize_window() 14. 15. # 通过javascript设置浏览器窗口的滚动条位置 16. js_down = "document.documentElement.scrollTop=100000" 17. js_up = "document.documentElement.scrollTop=0" 18. driver.execute_script(js_down) 19. sleep(3) 20. driver.execute_script(js_up) 21. sleep(3) 22. 23. driver.quit()
3. 控制滚动条横向距离
- window.scrollTo(100,500)
4. 元素聚焦
- 使用场景:当页面很长,想要操作的元素不在当前页面,需要向下滑动才可见,这时就可以使用聚焦,使页面滑动到该元素可见位置
- 方法:driver.execute_script('arguments[0].scrollIntoView(false);', ele)
1. 第一个参数为固定写法,第二个参数为想要聚焦的元素 2. scrollIntoView() 两个参数 默认为true 顶部对齐,false 底部对齐
完整代码
1. # -*-coding:utf-8一*- 2. # @Time:2021/1/15 3. # @Author: 大海 4. import time 5. from selenium import webdriver 6. 7. driver = webdriver.Chrome() 8. # 访问我的博客 9. driver.get("https://blog.csdn.net/IT_heima?spm=1001.2014.3001.5343") 10. 11. driver.maximize_window() 12. # 使用xpath定位最新文章位置 13. ele = driver.find_element_by_xpath("//*[@id='asideArchive']/*[@class='aside-title']") 14. 15. # 第一个参数为固定写法,第二个参数为想要聚焦的元素 16. # scrollIntoView() 两个参数 默认为true 顶部对齐,false 底部对齐 17. driver.execute_script('arguments[0].scrollIntoView(false);', ele) 18. 19. time.sleep(3) 20. 21. driver.close()
5. 其他
- scrollHeight :获取对象的滚动高度。
- scrollLeft :设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离。
- scrollTop :设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离。
- scrollWidth :获取对象的滚动宽度