- 属性定位
以baidu.com为例:
进入百度后打开xpath,快捷方式 ctrl+shift+x
右键鼠标点击 ‘检查’
定位找到’ 输入文本框 ‘
//input[@id='kw']
定位找到 ‘ 百度一下 ’
//input[@class='bg s_btn']
image.png
- 层级定位
找到 ‘百度首页’
//a[@class="toindex"] 方式一通过属性定位
//div[@id='head']/div/div[2]/a[1] 方式二通过层级+索引定位
//div[@id='head']/div/div[@id='u']/a[@class='toindex']方式三通过层级+属性定位
- 索引定位
//div[@id='head']/div/div[2]/a[1] 方式二通过层级+索引定位
注意:索引是从1开始
//div[@id='head']//a[@class='toindex']
注意:双斜杠代表下面所有的a节点,不管位置
- 逻辑运算
//input[@class="s_ipt" and @name="wd"]
- 模糊匹配
- contains
//input[contains(@class,"s_i")]
所有的input,有class属性,并且属性中带有s_i的节点
image.png
- starts-with
//input[starts-with(@class,"s")]
所有的input,有class属性,并且属性以s开头
- 取文本
//div[@id="u1"]/a[5]/text()获取节点内容
//div[@id="u1"]//text()获取节点里不带标签下所有内容
贴吧文本
-
取属性
取贴吧href属性
//div[@id="u1"]/a[5]/@href
href属性