XPath的安装与使用

XPath的安装与使用

    • 一、XPath简介
      • XPath是如何搜索XML或HTML文档的?
      • 路径表达式
    • 二、XPath的安装(chrome)
    • 三、如何使用XPath
      • 1.XPath语法<br>
      • 2.使用XPath插件

一、XPath简介

XPath即XML路径查询语言(XML Path Language),是一种用于确定XML文档中部分节点位置的语言。它起初只支持搜索XML文档,更新后能支持搜索HTML文档

XPath是如何搜索XML或HTML文档的?

XPath基于XML或HTML的节点树,沿着节点树的节点关系定位到目标节点所在的位置,并选取节点或节点集。为了形象地描述出搜索节点的路径,XPath提供简洁明了的路径表达式,通过路径表达式可以快速地定位与选取XML或HTML文档中的一个节点或者一组节点集。

路径表达式

路径表达式描述了从一个节点到另一个节点或一组节点的路径。这些路径与在常规的计算机文件系统中见到的路径非常相似。例如,“/学生名单/班级/学生/籍贯”就是一个路径表达式,该路径表达式也是用“/”字符进行分割的,只不过它分割的是节点,而不是目录。

XML文档,XML节点树与路径表达式的关系

XML文档
<bookstore>
    <book category="WEB">
        <title>Learing XML</title>
        <author>Erik T.Ray</author>
        <year>2003</year>
        <price>39,95</price>
    </book>
</bookstore>

在上图中,从上到下,依次为XML文档、XML节点树和路径表达式。其中路径表达式为:“/bookstore/book/price”,它对应的路径为XML节点树种加粗的线条,用于选取节点price对应的文本39.95

二、XPath的安装(chrome)

本章选取的XPath版本为2.0.2,并在chrome中添加扩展,请保持chrome为最新版。

压缩包地址:XPath压缩包,密码:fxd1

1.下载解压到桌面。

2.打开chrome,打开设置在左边工具栏中找到扩展程序,点开就能看到所有的扩展程序,确保自己打开了开发者模式

3.将桌面上的解压缩文件拖到刚刚的界面进行添加程序。

4.添加完成扩展程序中就新增了一个XPath Helper。


5.可以通过浏览器右上角扩展程序将XPath添加到工具栏。


6.检查是否成功添加XPath到浏览器。

点击XPath程序页面出现黑色输入框即为添加成功。

三、如何使用XPath

我们要编写一个路径表达式,则要先了解XPath的语法,才能使用路径表达式正确的选取节点。

1.XPath语法

(1).选取节点

表达式说明
节点名称选取此节点的所有子节点
/从根节点开始选取直接子节点,相当于绝对路径
//从当前节点开始选取后代节点,相当于相对路径
.选取当前节点
选取当前节点的父节点
@选取属性节点

(2).常用的XPath函数

函数说明
position()返回当前被处理的节点位置
last()返回当前节点集中的最后一个节点
count()返回节点的总数目
max((arg,arg…))返回大于其他参数的参数
min((arg,arg…))返回小于其它参数的参数
name()返回当前节点的名称
current-date()返回当前的日期(带有时区)
current-time()返回当前的时间(带有时区)
contains(string1,string2)若string1包含string2,则返回True,否则返回False

(3).选取未知节点

通配符/函数说明
*匹配任何元素节点
@*匹配任何属性节点
node()匹配任何类型节点

(4).选取若干路径

在XPath中,我们可以使用“|”运算符连接多个路径表达式,根据多个路径选取对应的节点。

//book/title | //book/price     # 选取属于book的子节点title和price
//title | //price               # 选取所有title节点和price节点
/bookstore/book/title | //price   # 选取属于/bokstore/的所有title节点和文档中的所有节点

2.使用XPath插件

下面以豆瓣电影TOP250为例,来说明怎么获取所有的电影名称。

网址:豆瓣电影TOP250

1.打开豆瓣TOP250网站,按下F12进入开发者模式,可以看到该网页的HTML代码
在这里插入图片描述
2.点击开发者模式左上角小箭头图标,进入检查模式。

5.打开XPath插件,将刚刚赋值的路径粘贴到XPath输入框中。


我们就看到了我们选取的电影名

6.要选取所有的电影名称我们就需要更改路径。

观察当前名称的html标签位置,找出规则。

所有电影名称的XPath路径为:

//*[@id="content"]/div/div[1]/ol/li/div/div[2]/div[1]/a/span[1]

在XPath输入框中输入上述路径,得出所有电影名称。

至此我们学会了怎么使用XPath。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
社会演员多的头像社会演员多普通用户
上一篇 2023年11月9日
下一篇 2023年11月9日

相关推荐