目录
一、通配符
通配符 | 描述 |
---|---|
* | 匹配任何元素标签,同层模糊 |
@* | 匹配任何属性,同层模糊 |
node() | 匹配任何类型,同层模糊 |
*/ | 匹配任何元素标签,多层模糊 |
// | 匹配任何元素标签,多级压缩 |
使用方法如下:
result = html.xpath('/html/body/div/*/div/div[*]/node()/main/article/div/div[*]/div')[0]
1、* 同层模糊
/html/body/div[0]/main/article/a/div
/html/body/div[1]/main/article/div/div
倘如想将上述两个合并,代码如下
/html/body/div[*]/main/article/*/div
2、同层合并(or操作)
/div/h2/a
/div/h4/a
倘如想将上述两个合并,代码如下
/div/*[self::h2 or self::h4]/a
3、*/ 多层模糊
/html/body/div/div/div/main/article/div/div
/html/body/div/div/div/div/main/article/div/div
倘如想将上述两个合并,代码如下
/html/body/div/div/*//main/article/div/div
4、字符串包含匹配
只要div的class属性包含字符串
"item-article"
都能匹配到
//div[contains(@class, 'item-article')]
二、遍历
通配符 | 描述 |
---|---|
xpath(‘./*’) | 遍 |