1. 程式人生 > 程式設計 >Python selenium模組實現定位過程解析

Python selenium模組實現定位過程解析

selenuim模組定位方法

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

   2,我們先開啟一個網頁,按F12來獲取這個網頁的原始碼,方便我們定位元素。

 from selenium import webdriver 
 driver=webdriver.Chrome() #啟動谷歌瀏覽器
 driver.get("http://www.baidu.com")  #開啟百度網頁

Python selenium模組實現定位過程解析

   3,按F12我們獲取到元素,滑鼠點選圖片紅框中的標,然後把滑鼠放到你想要獲取的元素位置,然後右邊程式碼會自動定位。

定位方法詳解

   1.用id定位

Python selenium模組實現定位過程解析

  我們可以看到右邊程式碼元素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('您好')  #在搜尋框內輸入你好

2.用name來定位

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

  3.用classname來定位

#程式碼同上
driver.find_element_by_class_name('s_ipt') #通過類名定位,一般類名有重複的,不常使用

  4.用標籤來定位

#程式碼同上
driver.find_element_by_tag_name('tag') #標籤定位,不常使用

  5.定位a標籤。

#程式碼同上
driver.find_element_by_link_text('text')    #定位a標籤的內容完全匹配
driver.find_element_by_partical_link_text('text')  #定位a標籤內容模糊匹配

  6.通過路徑來定位,常用相對路徑。

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

  html中,大多數的元素都具備id和name的屬性,並且id是唯一的,因此用id和name來定位元素是比較常見的方式。 不過有的元素並不具備id和name屬性,我們則可以用class name來定位元素。當然我還可以用tag name來定位,但是標籤名字太容易重複,除非想定位一組相同標籤的元素,否則一般不推薦使用

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。