Python selenium模塊實(shí)現(xiàn)定位過程解析
selenuim模塊定位方法
1,我們想要操作html頁面上的元素,首先必須要定位到這個(gè)元素上。每個(gè)元素都有他各自的屬性,比如id,name,class等,我們就通過這些屬性來定位元素。
2,我們先打開一個(gè)網(wǎng)頁,按F12來獲取這個(gè)網(wǎng)頁的源代碼,方便我們定位元素。
from selenium import webdriver driver=webdriver.Chrome() #啟動(dòng)谷歌瀏覽器 driver.get('http://www.baidu.com') #打開百度網(wǎng)頁
3,按F12我們獲取到元素,鼠標(biāo)點(diǎn)擊圖片紅框中的標(biāo),然后把鼠標(biāo)放到你想要獲取的元素位置,然后右邊代碼會(huì)自動(dòng)定位。
定位方法詳解
1.用id定位
我們可以看到右邊代碼元素id為kw。
from selenium import webdriver driver=webdriver.Chrome() driver.get('http://www.baidu.com')s=driver.find_element_by_id(’kw’) #定位到id等于kw的元素(百度搜索框)s.send_keys(’您好’) #在搜索框內(nèi)輸入你好
2.用name來定位
#代碼同上driver.find_element_by_name(’wd’) #定位name為wd的元素
3.用classname來定位
#代碼同上driver.find_element_by_class_name(’s_ipt’) #通過類名定位,一般類名有重復(fù)的,不常使用
4.用標(biāo)簽來定位
#代碼同上driver.find_element_by_tag_name(’tag’) #標(biāo)簽定位,不常使用
5.定位a標(biāo)簽。
#代碼同上driver.find_element_by_link_text(’text’) #定位a標(biāo)簽的內(nèi)容完全匹配driver.find_element_by_partical_link_text(’text’) #定位a標(biāo)簽內(nèi)容模糊匹配
6.通過路徑來定位,常用相對(duì)路徑。
driver.find_element_by_xpath(//*[@id='kw']) #相對(duì)路徑定位注意:
html中,大多數(shù)的元素都具備id和name的屬性,并且id是唯一的,因此用id和name來定位元素是比較常見的方式。 不過有的元素并不具備id和name屬性,我們則可以用class name來定位元素。當(dāng)然我還可以用tag name來定位,但是標(biāo)簽名字太容易重復(fù),除非想定位一組相同標(biāo)簽的元素,否則一般不推薦使用
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python 如何在 Matplotlib 中繪制垂直線2. bootstrap select2 動(dòng)態(tài)從后臺(tái)Ajax動(dòng)態(tài)獲取數(shù)據(jù)的代碼3. ASP常用日期格式化函數(shù) FormatDate()4. python中@contextmanager實(shí)例用法5. html中的form不提交(排除)某些input 原創(chuàng)6. CSS3中Transition屬性詳解以及示例分享7. js select支持手動(dòng)輸入功能實(shí)現(xiàn)代碼8. 如何通過python實(shí)現(xiàn)IOU計(jì)算代碼實(shí)例9. 開發(fā)效率翻倍的Web API使用技巧10. vue使用moment如何將時(shí)間戳轉(zhuǎn)為標(biāo)準(zhǔn)日期時(shí)間格式
