一、XPath定义
XPath全称为XML Path Language,是一门在HTML/XML文件中匹配对应信息的语言。
二、XPath使用场景
在Selenium webdriver中定位元素位置、lxml/BeautifulSoup中获取对应元素信息中普遍使用。
三、XPath表达式
XPath表达式 | 标注 |
/ | 表示从根节点开始定位 |
// | 表示从任意位置开始定位 |
. | 表示选取当前节点 |
.. | 表示选取当前节点的父节点 |
@ | 选取属性 |
[@属性='值'] | 选取给定属性所匹配给定值的所有元素 |
[标签=‘值] | 选取给定标签所匹配给定值的所有元素 |
四、XPath定位方式
绝对路径:"html/body/div/form/fieldset/table/tbody/tr/td"
相对路径:"//input"
路径结合属性形式:"//input[@class='passwd']"
文本内容详细匹配:"//a[text()='百度一下']"
部分文本内容模糊匹配:"//a[contains(text(),'百度')]"
多个属性定位:"//input[@name='Name' and @id='ths']"
通过父级定位子集元素:"//td[@id='id1']/input"
复制xpath路径:在F12页面中找到对应元素后右键,复制xpath路径即可