生活中不少网站都是异步加载的,只有当你快要移动到那个位置,它才会开始加载,这样能够加快加载速度,让用户得到很好的体验。可是也给咱们Web自动化带来了必定的困难,直接使用元素来定位后面的元素,由于尚未加载,因此会报错。怎么解决呢,就是移动滑动条,让它快速到达网页底部。web
下面是我弄得一个在淘宝网页滑动下拉框的代码。chrome
from selenium import webdriver from time import sleep wd = webdriver.Chrome() wd.get('https://www.taobao.com/') sd = 0 for i in range(1,50): sd += 100 js = "var q=document.documentElement.scrollTop=%s"%(sd) wd.execute_script(js) sleep(0.5)
你们能够看到滑动条是慢慢的往下移动,若是你们以为这个速度太慢了,咱们能够暴力点。异步
from selenium import webdriver from time import sleep wd = webdriver.Chrome(r'E:\webdrivers\chromedriver.exe') wd.get('https://www.taobao.com/') js = "var q=document.documentElement.scrollTop=20000"
wd.execute_script(js)
回到顶部:网站
js = "var q=document.documentElement.scrollTop=0" wd.execute_script(js)
下面的代码也能作到spa
js="var q=document.getElementById('id').scrollTop=0" driver.execute_script(js)