柚子快報(bào)激活碼778899分享:
柚子快報(bào)激活碼778899分享:
HTML DOM節(jié)點(diǎn)
==========
HTML DOM (Document Object Model) 中 , 每一個(gè)元素都是節(jié)點(diǎn)。
Document 對(duì)象是 Window 對(duì)象的一部分,可通過(guò) window.document 屬性對(duì)其進(jìn)行訪問(wèn)。
元素定位
這里才是重點(diǎn),JS元素定位其實(shí)說(shuō)的就是Document元素定位。
查找元素,最常用的查找是根據(jù)ID和Tag Name ,注意:除id,css選擇器以外是元素組定位
1. document.getElementById(id屬性值) --》唯一的
2. document.getElementsByClassName(class屬性值) --》可以定位一組元素
? document.getElementsByClassName(class屬性值)[索引值] 對(duì)一組元素中的單個(gè)元素的獲取
3. document.getElementsByName(name屬性值)
4. document.getElementsByTagName(標(biāo)簽名)
5. document.querySelector(css選擇器) --》對(duì)于沒(méi)有id/name/classname屬性,可以使用這個(gè)定位元 素
這里與普通的元素定位沒(méi)有什么太大的區(qū)別,元素組定位索引取值,元素定位。還有就是value與send_keys區(qū)別。
from selenium import webdriver
fox = webdriver.Firefox()
fox.implicitly_wait(5)
fox.get(‘https://baidu.com’)
js_input = “document.getElementById(‘kw’).value=‘python’”
fox.execute_script(js_input)
jx_click = “document.getElementById(‘su’).click()”
fox.execute_script(jx_click)
fox.quit()
from selenium import webdriver
fox = webdriver.Firefox()
fox.implicitly_wait(5)
fox.get(‘https://baidu.com’)
js_input = “document.getElementsByClassName(‘mnav’)[0].click()”
fox.execute_script(js_input)
sleep(2)
fox.quit()
這里看到區(qū)別了吧,JS中元素定位方式類似,寫法還是有一定的區(qū)別的。我個(gè)人舉得還是挺繁瑣的。其他的元素定寫法與上述類似,這里就不做全部的代碼展示了。自行練習(xí)!
更改元素屬性值
看到這是不是很意外,還能更改元素屬性值,JS的特點(diǎn)這里也有份,網(wǎng)頁(yè)中有部分的屬性是隱藏的,有些屬性只讀不可寫讓我們具體看看。
document.getElementById(‘kw’).autocomplete= ‘off’ --常用元素屬性修改;百度 document.getElementById(‘vip’).style.visibility= ‘visible’ --設(shè)置元素的隱藏屬性,是否顯示;
隱藏的元素:利用javascript更改元素屬性值,讓元素可見
例如:visibility:hidden(隱藏),visible(顯示)
display : none(隱藏),block(顯示)
看這個(gè)例子,我們可以通過(guò)更改屬性值直接隱藏掉這個(gè)煩人的東西。
from time import sleep
from selenium import webdriver
fox = webdriver.Firefox()
fox.implicitly_wait(5)
fox.get(‘https://www.tmall.com/’)
js = “document.querySelector(‘.j_doodleLink’).style.display=‘none’”
fox.execute_script(js)
sleep(3)
fox.quit()
還可以更改很多東西,比如text值,定位元素后.text=’ '想要修改的值,具體的用法很多很多,對(duì)于測(cè)試而言,這部分其實(shí)也差不多,但是你想技多不壓身就去研究研究。
控制滾動(dòng)條
======
控制滾動(dòng)條有什么好處,如果頁(yè)面沒(méi)有完全顯示,element如果是在下拉之后才能顯示出來(lái),只能先滾動(dòng)到該元素才能進(jìn) 行click,否則是不能click。
對(duì)于縱向滾動(dòng)條,我們要獲取滾動(dòng)條的高度;
對(duì)于橫向滾動(dòng)條則需要獲取他的寬度
1. document.body.scrollHeight 獲取對(duì)象的滾動(dòng)高度
2. document.body.scrollWidth 獲取對(duì)象的滾動(dòng)寬度
滑動(dòng)滾動(dòng)條:
window.scrollTo(x,y) 方法可把內(nèi)容滾動(dòng)到指定的坐標(biāo)。
滑動(dòng)到頁(yè)面底部:
1. 左下角:window.scrollTo(0,document.body.scrollHeight)
2. 右下角:
window.scrollTo(document.body.scrollWidth,document.body.scrollHeight)
3. 指定位置:window.scrollTo(0,數(shù)值)
4. 滑動(dòng)到指定元素:ele.srollIntoView() true:與元素頂部對(duì)其,false:與元素底部對(duì)其 ????????????????????????document.querySelector(‘’).scrollIntoView()
document.querySelector(‘’).scrollIntoView(false)
這里直接拿淘寶的例子來(lái)跑,先下拉到指定舉例,再下拉到最底部:
from selenium import webdriver
from time import sleep
fox = webdriver.Firefox()
fox.get(‘https://www.taobao.com/’)
fox.maximize_window()
獲取高度
js_height = “return document.body.scrollHeight”
height = fox.execute_script(js_height)
print(height)
獲取寬度
js_width = “return document.body.scrollWidth”
width = fox.execute_script(js_width)
print(width)
下滑1000px
js_left = “window.scrollTo(0,1000)”
fox.execute_script(js_left)
sleep(2)
下滑最底部
jx_left_down = “window.scrollTo(0,document.body.scrollHeight)”
fox.execute_script(jx_left_down)
下滑到指定元素
jx_left_zd = “document.querySelector(‘ul.list > a:nth-child(3) > div:nth-child(1) > div:nth-child(2)’).scrollIntoView(false)”
fox.execute_script(jx_left_zd)
上述是瀏覽器滾動(dòng)條。接下來(lái)給到各位一個(gè)界面元素滾動(dòng)條。自己寫了一個(gè)JS,便于練習(xí),源碼給到各位:
人們常說(shuō),猶豫一萬(wàn)次,不如實(shí)踐一次。一個(gè)人越猶豫不決,就越容易患得患失.
西雨斜風(fēng)作小寒,淡煙疏柳媚晴灘.
入淮清洛漸漫漫,雪沫乳花浮午盞。
蓼茸蒿筍試春盤,人間有味是清歡
個(gè)人微信號(hào)qing_an_an
自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過(guò),也去過(guò)華為、OPPO等大廠,18年進(jìn)入阿里一直到現(xiàn)在。
深知大多數(shù)同學(xué)面臨畢業(yè)設(shè)計(jì)項(xiàng)目選題時(shí),很多人都會(huì)感到無(wú)從下手,尤其是對(duì)于計(jì)算機(jī)專業(yè)的學(xué)生來(lái)說(shuō),選擇一個(gè)合適的題目尤為重要。因?yàn)楫厴I(yè)設(shè)計(jì)不僅是我們?cè)诖髮W(xué)四年學(xué)習(xí)的一個(gè)總結(jié),更是展示自己能力的重要機(jī)會(huì)。
因此收集整理了一份《2024年計(jì)算機(jī)畢業(yè)設(shè)計(jì)項(xiàng)目大全》,初衷也很簡(jiǎn)單,就是希望能夠幫助提高效率,同時(shí)減輕大家的負(fù)擔(dān)。
既有Java、Web、PHP、也有C、小程序、Python等項(xiàng)目供你選擇,真正體系化!
由于項(xiàng)目比較多,這里只是將部分目錄截圖出來(lái),每個(gè)節(jié)點(diǎn)里面都包含素材文檔、項(xiàng)目源碼、講解視頻
如果你覺(jué)得這些內(nèi)容對(duì)你有幫助,可以添加VX:vip1024c (備注項(xiàng)目大全獲取)
r(getComputedStyle(o)[“border-top-width”]);
}
return allY;
}
自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過(guò),也去過(guò)華為、OPPO等大廠,18年進(jìn)入阿里一直到現(xiàn)在。
深知大多數(shù)同學(xué)面臨畢業(yè)設(shè)計(jì)項(xiàng)目選題時(shí),很多人都會(huì)感到無(wú)從下手,尤其是對(duì)于計(jì)算機(jī)專業(yè)的學(xué)生來(lái)說(shuō),選擇一個(gè)合適的題目尤為重要。因?yàn)楫厴I(yè)設(shè)計(jì)不僅是我們?cè)诖髮W(xué)四年學(xué)習(xí)的一個(gè)總結(jié),更是展示自己能力的重要機(jī)會(huì)。
因此收集整理了一份《2024年計(jì)算機(jī)畢業(yè)設(shè)計(jì)項(xiàng)目大全》,初衷也很簡(jiǎn)單,就是希望能夠幫助提高效率,同時(shí)減輕大家的負(fù)擔(dān)。 [外鏈圖片轉(zhuǎn)存中…(img-Isfg3g4r-1712578295979)] [外鏈圖片轉(zhuǎn)存中…(img-TRNwPNzM-1712578295980)] [外鏈圖片轉(zhuǎn)存中…(img-FWyJfHlI-1712578295980)]
既有Java、Web、PHP、也有C、小程序、Python等項(xiàng)目供你選擇,真正體系化!
由于項(xiàng)目比較多,這里只是將部分目錄截圖出來(lái),每個(gè)節(jié)點(diǎn)里面都包含素材文檔、項(xiàng)目源碼、講解視頻
如果你覺(jué)得這些內(nèi)容對(duì)你有幫助,可以添加VX:vip1024c (備注項(xiàng)目大全獲?。?[外鏈圖片轉(zhuǎn)存中…(img-2KZQaXtB-1712578295980)]
柚子快報(bào)激活碼778899分享:
相關(guān)文章
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。