xpath

是一种在XML文档中定位元素的语言

1.绝对路径定位

find_element_by_xpath('/html/body/div/div[1]/div/div/div/form/span/input[1]')  编辑条id=kw

说明:最外层是HTML,在body内,一层一层的查,如果存在多个元素用[]填写数字,例如div[2],表示当前层级下的第二个div标签,下标从1开始

 

2.利用元素属性定位  (只要元素属性能唯一标识一个元素,任意属性值都可以使用)

a.根据id

id表示id

input表示定位元素的标签名

find_element_by_xpath("//input[@id=‘kw’]")

b.根据name

find_element_by_xpath("//input[@name=‘wd’]")

c.根据class

find_element_by_xpath("//input[@class="s_ipt]")

d.不指定标签名

find_element_by_xpath("//*[@class="s_ipt]")

 

3.层级与属性结合

如果一个元素本身没有可以唯一标识这个元素的属性值,我们可以找其上一级元素,如果上一级元素有可以唯一标识属性的值,也可以拿来使用。

find_element_by_xpath("//span[@class='bg s_ipt_wr']/input")

先通过class属性定位到父元素,后面input表示父元素下面的子元素

4.使用逻辑运算符

如果一个属性不能唯一区分一个元素,我们还可以使用逻辑运算符连接多个属性来查找元素。

举例:

<input id="kw" class="su" name="ie">

<input id="kw" class="aa" name="ie">

<input id="bb" class="su" name="ie">

find_element_by_xpath("//input[@id='kw' and @class='su']/span/input")  

 

posted @ 2019-03-14 16:44  期待me  阅读(84)  评论(0)    收藏  举报