chrome62 js的处理滚动条 以及指定滚动到某一个元素

按照悠悠书上的去处理。发现我的版本反而行不通。
就行着悠悠的路。反过来走。反而通了。不知道为毛。能通就行了
 
版本:chrome62,selenium 3.8.0
语言:python 2.7.6
 
js滚动条处理:
学习网上各个的方式
js = "var q=document.body.scrollTop=100000" 滚动到最底部
js1 ="var q=document.body.scrollTop=0" 滚动至顶部 
 
from selenium import webdriver
import time
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://www.cnblogs.com/yoyoketang/?_wv=1031')
driver.implicitly_wait(30)
driver.execute_script(js)
time.sleep(2)
 
亲自测试,发现这个方式无法滚动到底部(网上的资料,是否是使用的低版本的chrome的浏览器导致的问题,还是selenium的问题。我就不深究了,能用就代表你的用例可以走下去了)
js ="var q=document.documentElement.scrollTop=100000" 滚动到底部
js ="var q=document.documentElement.scrollTop=0" 滚动到顶部
 
from selenium import webdriver
import time
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://www.cnblogs.com/yoyoketang/?_wv=1031')
driver.implicitly_wait(30)
driver.execute_script(js)
time.sleep(2)
 
亲测可以啦到顶部。(怀疑是否是chrome版本是62的原因)
使用body的方式无法到顶部和底部
而使用documentElement.srollTop 可以拖动至顶部和底部
 
 使用chrome使用js的方式。滚动到指定的位置无法滚动;
 按照悠悠老的方式,发现不合适与chrome62的浏览器。一直报错
我就换了一个方式来搞搞吧
from selenium import webdriver
 
driver = webdriver.Chrome()
driver.get("https://www.jianshu.com/")
ActionChains(driver).move_to_element(driver.find_element_by_link_text("何沐芝")).perform()
 
亲测可以使用该方式滚动至目标位置。学习的各位。需要实验,就将定位改改。不然,你们会跑不通的。
 
 
posted @ 2018-01-14 15:31  小~yytt~  阅读(253)  评论(0编辑  收藏  举报