在實際專案中,會經常出現元素不在當前螢幕,需要滑動滾動條,才能顯示想要的元素。
這樣,如何通過定位滾動條,來定位到想要的元素呢,
webdriver不能直接定位到瀏覽器滾動條,只能通過execute_script()來執行js指令碼,達到滾動條的目的
我們今天運用window.scrollto()的方法來定位
語法:scrollto(xpos,ypos)
>>> xpos :橫座標
ypos:縱座標
直接上**:
# -*- coding: utf-8 -*-
"""@ auth : carl_dj
@ time : 2020-5-21
"""from selenium import webdriver
from selenium.webdriver.common.by import by
import time
#啟動瀏覽器
#driver = webdriver.firefox()
driver = webdriver.chrome()
url = ""
driver.get(url)
#搜尋selenium
driver.find_element(by.id,"kw").send_keys("selenium")
driver.find_element(by.id,"su").click()
time.sleep(3)
#呼叫js**拖動滾動條
driver.execute_script("window.scrollto(0,1680)")
#直接拖動到最底部
driver.execute_script("window.scrollto(0,document.body.scrollheight)")
#直接拖到頂部
driver.execute_script("window.scrollto(0,0)")
time.sleep(3)
#退出瀏覽器
driver.quit()
>>>還有一種寫法:
針對 chrome瀏覽器
#針對chrome瀏覽器
js = "var q=document.body.scrolltop=10000"
driver.execute_script(js)
針對firefox瀏覽器
#針對firefox瀏覽器
js = "var q=document.documentelement.scrolltop=10000"
driver.execute_script(js)
藍芽成長之路
藍芽最初由愛立信公司創制,後來由藍芽技術聯盟訂定技術標準。這個無線技術的名稱取自古代丹麥維京國王harald blaatand 的名字,直接翻譯成中文,便是 藍芽 1998年 藍芽推出0.7 版,這是藍芽的首個版本,支援 baseband 與lmp 通訊協定兩部分。1999年 這是藍芽發展歷史上的重...
學習成長之路
首先最完美的學習成長之路應該是這樣的 保持線性的積累和成長,積累夠了在某段很短的時間能突破關鍵點上公升乙個高度。但是現實是什麼樣的?首先日常保持線性的成長都很難,因為你的一天時間是固定,扣除工作,吃喝拉撒睡,扣除生活家人朋友愛人的相處時間,所剩無幾。所以為了保證學習時間,你得有取捨。有了充足的時間,...
菜鳥成長之路
對於體系化的構建以及重複性的學習我認為可以從以下幾點著手 一 學會學習 學習無疑是程式設計師最為重要的素質之一,尤其是網際網路這種日新月異的行業,把學習當做工作的一大半也不為過。1.1 學會自主學習 有乙個現象很明顯,我們大多數人並不是不想學習,而是經常會糾結於 我不知道學什麼好 總認為簡單的沒挑戰...