XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。起初 XPath 的提出的初衷是将其作为一个通用的、介于XPointer与XSLT间的语法模型。但是 XPath 很快的被开发者采用来当作小型查询语言。
表达式
XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。路径表达式是从一个XML节点(当前的上下文节点)到另一个节点、或一组节点的书面步骤顺序。这些步骤以“/”字符分开,每一步有三个构成成分:
轴描述(用最直接的方式接近目标节点)
节点测试(用于筛选节点位置和名称)
节点描述(用于筛选节点的属性和子节点特征)
一般情况下,我们使用简写后的语法。虽然完整的轴描述是一种更加贴近人类语言,利用自然语言的单词和语法来书写的描述方式,但是相比之下也更加啰嗦。
在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点(或成为根节点)。
XPath 术语
节点(Node)
在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML 文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。
基本值(或称原子值,Atomic value)
基本值是无父或无子的节点。
项目(Item)
项目是基本值或者节点。
节点关系
父(Parent)
每个元素以及属性都有一个父。
子(Children)
元素节点可有零个、一个或多个子。
同胞(Sibling)
拥有相同的父的节点
先辈(Ancestor)
某节点的父、父的父,等等。
后代(Descendant)
某个节点的子,子的子,等等。
相关推荐
Java XML XPath 是一种在XML文档中查找信息的语言,它被广泛用于Java开发中,以便高效地提取和操作XML数据。XPath使用路径表达式来选取XML文档中的节点或节点集,这些表达式类似于文件系统的路径,但针对的是XML文档...
这是本人在公司培训时做的一个PPT文档,分别介绍了xml、xhtml、xpath的语法规则,以及相互之前的区别、使用场景、扩展
本篇将详细介绍JSON和XPath这两种在网络爬虫中广泛应用的技术。 首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也方便机器解析和生成。它的语法结构与JavaScript...
3. **Xpath介绍**: Xpath(XML Path Language)是一种在XML文档中查找信息的语言,可以用来选取节点、选取节点集,甚至进行节点测试。对于HTML页面,Xpath同样适用,尽管HTML并非严格的XML结构,但大多数解析库能...
#### XPath 介绍与应用场景 XPath 是一门功能非常强大的查询语言,用于在 XML 文档中查找信息。由于 XML 数据结构的复杂性,XPath 提供了一种灵活的方式来定位文档中的元素和属性。对于使用 C# 进行 XML 开发的技术...
### XPath语法详细介绍 #### XPath简介 XPath是一种用于在XML文档中进行导航的查询语言。它提供了简洁、高效的方式来定位和提取文档中的特定部分。XPath不仅仅适用于XML文档的搜索,还是XSLT(一种用于转换XML文档...
- **第2章:XPath介绍** - 这一章节主要介绍了XPath的基本概念和语法,包括路径表达式、节点测试、轴和谓词等。 - 学习如何使用XPath来定位XML文档中的特定节点,以及如何使用XPath表达式来选择节点集合。 - **第...
docs:《数据采集从入门到放弃》源码。内容简介:爬虫介绍,...解析器Xpath介绍; MongoDB与MySQL;多线程爬虫; Scrapy介绍; Scrapy -redis介绍;使用docker部署;使用nomad管理docker充分;使用EFK查询docker日志
XPath,全称XML Path Language,是一种在XML文档中查找信息的语言。它被设计用来选取XML文档中的节点,如元素、属性、文本等。在Java编程中,XPath常用于处理XML数据,通过DOM4J库来实现。DOM4J是一个非常优秀的Java...
本篇文章将详细探讨如何查看网页元素的 XPath,并介绍其相关知识点。 首先,XPath 的基本概念: 1. **节点**:在 XML 或 HTML 文档中,节点可以是元素(如 `<div>`)、属性(如 `class="example"`)、文本(如 ...
本书全面介绍了 XPath 2.0 的语法、功能及应用实例,非常适合希望深入掌握 XPath 2.0 的程序员阅读。 - **作者简介**:Michael Kay 是一位著名的计算机科学家,专注于 XML 技术的研究与发展。他是 XPath 规范的主要...
### Python中的XPath神器 ...通过以上介绍可以看出,XPath在Python爬虫开发中扮演着极其重要的角色,它不仅可以帮助我们快速准确地定位和提取数据,还可以结合多线程等技术进一步提升数据抓取的速度和效率。
而“XPath 教程.chm”很可能是专注于XPath的详细教程,可能从XPath的起源、发展讲起,深入浅出地介绍其语法结构、使用规则及编写技巧,特别适合初学者通过逐步学习掌握XPath的使用方法。 至于“XPath.pdf”,作为一...
1. XPath简介:介绍XPath的基本概念和作用。 2. 路径表达式:讲解如何编写路径表达式来选取节点。 3. 节点测试和轴:详细解释各种节点测试和轴的用法。 4. 函数和运算符:阐述XPath提供的内置函数和逻辑、比较及算术...
7. 读取ME:一般包含项目的简短介绍、作者信息以及安装和使用说明。 XPath在爬虫中的应用包括: 1. **元素选择**:通过XPath可以精确地选取HTML或XML文档中的元素,例如`//div[@class='content']`选取所有类名为...
"学爬虫利器XPath.docx"文档很可能详细介绍了XPath的基础概念、语法和实例,包括如何在Python的`lxml`库中使用XPath进行网页数据的提取。如果你正在学习网络爬虫,理解并熟练运用XPath将是提高效率的关键。通过阅读...
以下将详细介绍这些依赖的jar文件及其在JsoupXPath中的作用。 1. **jsoup-1.10.3.jar**: Jsoup是Java的一个开源库,主要用于解析HTML文档,提取结构化数据。它提供了类似于DOM、CSS以及jQuery的API,方便进行HTML...
XPath官方手册中文版,内容介绍的很全面,将xpath相关的基础如xml等介绍得很好,比较适合初学者