python 3+selenium JS操作ページスクロールバーを使用
13378 ワード
js2 = "window.scrollTo(0,0);" #
必要なスクロール座標が分からない場合:
weizhi2 = driver.find_element_by_id("goldLeaseApp_bClientID") #
driver.execute_script("arguments[0].scrollIntoView();", weizhi2) #
arguments[0].scrollIntoView()
リファレンスリンク
参照コード:
JSを使用して縦スクロールバーをスライド
from selenium import webdriverfrom time import sleep
# driver = webdriver.Chrome()driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
driver.find_element_by_id('kw').send_keys("storm")
driver.find_element_by_id('su').click()
js1 = "window.scrollTo(0, document.body.scrollHeight)"#
js2 = "window.scrollTo(0,0)"#
js3 = "window.scrollTo(0,200)"# 200
js4 = "arguments[0].scrollIntoView();"#
sleep(2) # ,
driver.execute_script(js1) # js1,
sleep(2) # ,
driver.execute_script(js2) # js2,
sleep(2) # ,
driver.execute_script(js3) # js3, 200
sleep(2) # , driver.execute_script(js2) # js2, sleep(2)
ele = driver.find_element_by_id('con-ar') # driver.execute_script(js4,ele) #
sleep(2)
driver.quit()
Chrome Firefox
JSスライド横スクロールバーの使用
from selenium import webdriverfrom time import sleep
driver = webdriver.Chrome()# driver = webdriver.Firefox()driver.get("http://www.baidu.com")
driver.find_element_by_id('kw').send_keys("storm")
driver.find_element_by_id('su').click()
driver.set_window_size(500,500) # ,
js5 = "window.scrollTo(document.body.scrollWidth,0)"
js6 = "window.scrollTo(0,0)"
js7 = "window.scrollTo(200,0)"
driver.execute_script(js5) #
sleep(2)
driver.execute_script(js6) #
sleep(2)
driver.execute_script(js7) # 200
sleep(2)
driver.quit()
インラインスクロールバーの操作
スクロールバーを埋め込み、一般的にiframeの中に埋め込み、スクロールバーを操作するiframeの中にカットすればいいです.
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
# driver = webdriver.Firefox()
driver.get("http://sahitest.com/demo/iframesTest.htm")
sleep(2)
driver.switch_to.frame(1)#1 id=1 frame( )
js5 = "window.scrollTo(0,200)"driver.execute_script(js5) # 200 sleep(2)
driver.quit()
マルチスライドの例
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.maximize_window()
driver.get("http://www.taobao.com")
title = driver.title#title
if title == ' - ! ':
print(' ')
else:
print(' ')
driver.find_element_by_css_selector("#q").send_keys(" ")#
driver.find_element_by_css_selector(".btn-search").click()#
sleep(2)
aaa = "window.scrollTo(0,500);" # 500, ( ) 0
bbb = "window.scrollTo(0,800);"
ccc = "window.scrollTo(0,1000);"
driver.execute_script(aaa)#
sleep(2)
driver.execute_script(bbb)#
sleep(2)
driver.execute_script(ccc)#