1、XPath基础:
1、/ #从根节点开始
2、// #选择匹配的任何位置
3、. #当前节点
4、.. #父节点
5、@ #选择属性
6、[node] #选取所有node子元素
7、[@attr] #选择带有attr属性的所有元素
2、选取节点
1、//div #选择所有div元素
2、//div[@class] #选择带有class属性的div元素
3、//div[@id='id'] #选择id属性为id的div元素
3、路径表达式
1、//div/p #选择所有div下的p元素
2、//div//p #选择所有div下的所有p元素
4、谓词
1、//div[@class = 'heighlight'] #选择带有class属性为heighlight的div元素
2、//ul/li[position()<3] #选择ul下的前两个li元素
5、通配符
1、//* #选择所有的元素
2、//div/* #选择所有div下的所有子元素
6、文本提取
1、//p/text() #提取p元素的文本内容
7、比较运算符
1、//p[@id='para1'] #选择id为属性para1的p的元素
2、//a[@href!='#'] #选择href属性不等于‘#’的a元素
3、input[@type='text' and @name = 'username'] #选择type为'text'且name为username的input元素
8、位置谓词
1、//ul/li[1] #选择ul下的第一个li元素
2、//div[@class='article']/p[position()=last()] #选择class为article的div下的最后一个p元素
9、范围谓词
1、//div[@id='content']/p[position()>1 and position()<4] #选择id为content的div下的第二个到第三个p元素
10、使用逻辑运算符
//input[@type='text' and (@name='username' or @name='email')] #选择type为text起name为username或name为email的input元素
11、xpath内置函数
1、//a[contains(@href, 'example.com')] #选择href属性包含'example.com'的a元素
2、//h2[starts-with(@class, 'header')] #选择class属性以header开的h2元素
标签:XPath,name,元素,id,选择,div,class,随记 From: https://www.cnblogs.com/zyc-yy/p/18217512