0
点赞
收藏
分享

微信扫一扫

爬虫笔记day13

ZMXQQ233 2022-01-15 阅读 82

xpath语法解析

定义:xpath即为xml路径语言,它是一种用来确定xml文档中某部分位置的语言,同样适用于HTML文档的检索

xpath选取节点

1//:从所有节点中查找(包括子节点和后代节点)

2、@:获取属性值
使用场景1(属性值作为条件)://div[@class="movie-item-info"]
使用场景2(直接获取属性值)://div[@class="movie-item-info"]/a/img/@src

3、匹配多路径
xpath表达式1|xpath表达式2|xpath表达式3
例子://li|//ul

contains():匹配属性值中包含某些字符串节点
例子:查找id属性值中包含字符串“car_”中的li节点
//li[contains(@id,"car_")]

text():获取节点的文本内容
例子:查找所有汽车的文本内容
//ul[@class="car"]/p/text()

注意:
1、只要涉及到条件,加[]:如://li[@class="xxx"]  //li[2]
2、只要获取属性值,加@:如//li[class="xxx"] //li/@href

例子:利用xpath提取猫眼电影top100

写出匹配猫眼电影top100电影名称、主演、上映时间、电影链接

html代码:
<div class="movie-item-info">
        <p class="name"><a href="/films/1444523" title="穿过寒冬拥抱你" data-act="boarditem-click" data-val="{movieId:1444523}" class="">穿过寒冬拥抱你</a></p>
        <p class="star">
                主演:黄渤,贾玲,朱一龙
        </p>
<p class="releasetime">上映时间:2021-12-31</p>    </div>


#电影名称xpath 
//div[@class="movie-item-info"]/p[1]/a/text()
#电影主演
//div[@class="movie-item-info"]/p[2]/text()
#上映时间
//div[@class="movie-item-info"]/p[3]/text()
#电影链接
//div[@class="movie-item-info"]/p[1]/a/@href

总结:

使用xpath表达式匹配的结果为两种情况:字符串和节点对象
1、xpath表达式的末尾为:/text() 、/@href 得到的列表为字符串
2、其余剩下所以情况得到的列表中均为节点对象

举报

相关推荐

寒假:Day13

JVM[day13]

C语言学习笔记Day13

算法练习-day13

JS基础day13

java基础 Day13

云计算day13

0 条评论