python定位元素 Python元素定位

2021-10-21 05:21:03 字數 2038 閱讀 6013

一.  id元素定位

id有兩種情況:一種id是唯一的,另一種id是動態的。

(1)當id是唯一,最簡單的定位方式:

用法:find_element_by_id(「id_value」)

例項:find_element_by_id(「kw」)

(2)若id是動態變化,則不可以採用以上方式定位,如下

id是動態變化

二.  name元素定位

用法:find_element_by_name(「name_value」)

例項:find_element_by_name(「wd」)

注:name有可能會重複

三.  class_name元素定位

用法:find_element_by_class_name(「class_name_value」)

例項:find_element_by_class_name(「wd」)

注:class_name有可能會重複

四.  xpath元素定位

例圖用法:find_element_by_xpath(「xpath」)

例項:(1)屬性元素定位

find_element_by_xpath(「//標籤名[@屬性=』屬性值』]」)

id屬性:find_element_by_xpath(「//input[@id=』kw』]」)

class屬性:find_element_by_xpath(「//input[@class=』s_ipt』]」)

name屬性:find_element_by_xpath(「//input[@name=』wd』]」)

maxlength屬性:find_element_by_xpath(「//input[@maxlength=』255』]」)

(2)標籤名元素定位

指所有input標籤元素:find_element_by_xpath(「//input」)

(3)父子元素定位

查詢有父親元素的標籤名為span,它的所有標籤名叫input的子元素

find_element_by_xpath(「//span/input」)

(4)內容元素定位

find_element_by_xpath(「//p[contains(text(),』京公網』)]」)

內容元素定位

注:contains的另一種用法://input[contains(@class,』s』)]說明class屬性包含s的元素。

(5)組合元素定位

//父元素標籤名/標籤名的屬性值:指的是span下的input標籤下class屬性為s_ipt的元素。

find_element_by_xpath(「//span/input[@class=』s_ipt』]」)

多個屬性組合定位:

a.  指的是input標籤下id屬性為kw且name屬性為wd的元素

find_element_by_xpath(「//input[@class=』s_ipt』 and @name=』wd』]」)

b.  指的是p標籤下內容包含」京公網」且id屬性為jgwab的元素

find_element_by_xpath(「//p[contains(text(),』京公網』) and @id=』jgwab』]」)

(6)最簡單的方法

右鍵copy->copy xpath

五.  link元素定位

用法:find_element_by_link_text(「text_value」)

例項:find_element_by_link_text(「登入」)

六.  partial_link元素定位

用法:find_element_by_partial_link_text(「部分text_value」)

例項:find_element_by_partial_link_text(「登」)

七.  tag_name元素定位

用法:find_element_by_tag_name(「tag_name_value」)

例項:find_element_by_tag_name(「input」)

八.  css元素定位

右鍵copy->copy css

Python定位元素彙總

如果id不是動態的,乙個頁面的id是唯一的,最簡單的定位方式。find element by id id value eg find element by id kw class name一般情況下都是易重複的 find element by class name class name value ...

Python定位元素的方法

通過id定位目標元素 driver.find element by id i1 通過classname定位目標元素 driver.find element by class name c1 通過name屬性定位目標元素 driver.find element by name n1 通過xpath定位...

css selector定位元素

selenium中經常要用css selector定位元素,雖說可以用firefox的firebug firepath直接copy元素的xpath路徑,但有時還是很必要用css selector來定位,也算技多不壓身吧 系統的學習一下,也當是臨陣磨槍。一共8種方式的選擇器。根據元素的標籤定位,如下 ...