Python selenium模塊實(shí)現(xiàn)定位過程解析
selenuim模塊定位方法
1,我們想要操作html頁面上的元素,首先必須要定位到這個元素上。每個元素都有他各自的屬性,比如id,name,class等,我們就通過這些屬性來定位元素。
2,我們先打開一個網(wǎng)頁,按F12來獲取這個網(wǎng)頁的源代碼,方便我們定位元素。
from selenium import webdriver driver=webdriver.Chrome() #啟動谷歌瀏覽器 driver.get('http://www.baidu.com') #打開百度網(wǎng)頁
3,按F12我們獲取到元素,鼠標(biāo)點(diǎn)擊圖片紅框中的標(biāo),然后把鼠標(biāo)放到你想要獲取的元素位置,然后右邊代碼會自動定位。
定位方法詳解
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.通過路徑來定位,常用相對路徑。
driver.find_element_by_xpath(//*[@id='kw']) #相對路徑定位注意:
html中,大多數(shù)的元素都具備id和name的屬性,并且id是唯一的,因此用id和name來定位元素是比較常見的方式。 不過有的元素并不具備id和name屬性,我們則可以用class name來定位元素。當(dāng)然我還可以用tag name來定位,但是標(biāo)簽名字太容易重復(fù),除非想定位一組相同標(biāo)簽的元素,否則一般不推薦使用
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 基于javaweb+jsp實(shí)現(xiàn)學(xué)生宿舍管理系統(tǒng)2. 多級聯(lián)動下拉選擇框,動態(tài)獲取下一級3. ASP.NET MVC實(shí)現(xiàn)樹形導(dǎo)航菜單4. 如何封裝一個Ajax函數(shù)5. Java 接口和抽象類的區(qū)別詳解6. Laravel Eloquent ORM高級部分解析7. IDEA 搭建maven 安裝、下載、配置的圖文教程詳解8. jsp response.sendRedirect()用法詳解9. Spring security 自定義過濾器實(shí)現(xiàn)Json參數(shù)傳遞并兼容表單參數(shù)(實(shí)例代碼)10. PHP擴(kuò)展之URL編碼、解碼及解析——URLs
