Python + Selenium(七)网页元素定位(六)Xpa
2019-10-22 本文已影响0人
猫与测试
前面讲的定位方式,都能够很方便的定位到网页元素。但是这些属性并非所有的网页元素都具备,可以这么说,绝大部分情况下都很难保证元素具备这些属性。
也就是很多时候需要使用其他的方式来定位,在 WebDriver 中提供了 Xpath 和 Css 选择器两种语言来辅助定位。这两种语言都很强大,能够定位网页上的任意元素。
在网络爬虫中,也通常会用借助 lxml 库使用 Xpath 进行网页的解析。
关于 Xpath 的语法,请参考《Xpath详解》。
在 WebDriver 中使用 Xpath 的方法如下:
# 注意其中的引号
driver.find_element_by_xpath('//td[string()="支付宝"]/../td[1]/input')
注意:
通过 Xpath 如果是定位多个元素,使用 find_element_by_xpath 只能返回符合条件一个。
验证 Xpath
验证 xpath 有两种方法:
- 在开发者工具的 Elements 中按
Ctrl + F
,在搜索框中输入 Xpath:
- 在开发者工具的 Console 中使用
$x()