溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python selenium模塊實(shí)現(xiàn)定位的方法

發(fā)布時(shí)間:2020-07-10 10:47:44 來(lái)源:億速云 閱讀:222 作者:清晨 欄目:開發(fā)技術(shù)

這篇文章主要介紹Python selenium模塊實(shí)現(xiàn)定位的方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

selenuim模塊定位方法

   1,我們想要操作html頁(yè)面上的元素,首先必須要定位到這個(gè)元素上。每個(gè)元素都有他各自的屬性,比如id,name,class等,我們就通過(guò)這些屬性來(lái)定位元素。

   2,我們先打開一個(gè)網(wǎng)頁(yè),按F12來(lái)獲取這個(gè)網(wǎng)頁(yè)的源代碼,方便我們定位元素。

 from selenium import webdriver 
 driver=webdriver.Chrome() #啟動(dòng)谷歌瀏覽器
 driver.get("http://www.baidu.com")  #打開百度網(wǎng)頁(yè)

Python selenium模塊實(shí)現(xiàn)定位的方法

   3,按F12我們獲取到元素,鼠標(biāo)點(diǎn)擊圖片紅框中的標(biāo),然后把鼠標(biāo)放到你想要獲取的元素位置,然后右邊代碼會(huì)自動(dòng)定位。

定位方法詳解

   1.用id定位

Python selenium模塊實(shí)現(xiàn)定位的方法

  我們可以看到右邊代碼元素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來(lái)定位

#代碼同上
driver.find_element_by_name('wd') #定位name為wd的元素

  3.用classname來(lái)定位

#代碼同上
driver.find_element_by_class_name('s_ipt') #通過(guò)類名定位,一般類名有重復(fù)的,不常使用

  4.用標(biāo)簽來(lái)定位

#代碼同上
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.通過(guò)路徑來(lái)定位,常用相對(duì)路徑。

driver.find_element_by_xpath(//*[@id="kw"]) #相對(duì)路徑定位注意:

  html中,大多數(shù)的元素都具備id和name的屬性,并且id是唯一的,因此用id和name來(lái)定位元素是比較常見(jiàn)的方式。 不過(guò)有的元素并不具備id和name屬性,我們則可以用class name來(lái)定位元素。當(dāng)然我還可以用tag name來(lái)定位,但是標(biāo)簽名字太容易重復(fù),除非想定位一組相同標(biāo)簽的元素,否則一般不推薦使用

以上是Python selenium模塊實(shí)現(xiàn)定位的方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI