XPath 有 7 种节点:
element(元素)
attribute(属性)
text(文本)
namespace(命名空间)
processing-instruction(处理说明)
comment(注释)
document (root) nodes(文档节点或根节点)
属性值或文本, 是原子值。
每个元素或属性有一个父。
元素的子元素可以有 0 个, 1 个, 或者多个。
拥有同样父元素的成为兄弟。
元素的最顶级父, 称为祖先。
元素的子元素, 子元素的子元素等等, 称为子孙。
路径实例:
/bookstore/book[1]
/bookstore/book[last()]
/bookstore/book[last()-1]
/bookstore/book[position()<3]
//title[@lang]
//title[@lang='eng']
/bookstore/book[price>35.00]
/bookstore/book[price>35.00]/title
/bookstore/*
//*
//title[@*]
//book/title | //book/price
//title | //price
/bookstore/book/title | //price
绝对路径:
/step/step/...
相对路径:
step/step/...
轴实例:
child::book
attribute::lang
child::*
attribute::*
child::text()
child::node()
descendant::book
ancestor::book
ancestor-or-self::book
child::*/child::price
操作符:
Operator |
Description |
Example |
Return value |
| |
Computes two node-sets |
//book | //cd |
Returns a node-set with all book and cd elements |
+ |
Addition |
6 + 4 |
10 |
- |
Subtraction |
6 - 4 |
2 |
* |
Multiplication |
6 * 4
|
24 |
div |
Division |
8 div 4 |
2 |
= |
Equal |
price=9.80 |
true if price is 9.80
false if price is 9.90 |
!= |
Not equal |
price!=9.80 |
true if price is 9.90
false if price is 9.80 |
< |
Less than |
price<9.80 |
true if price is 9.00
false if price is 9.80 |
<= |
Less than or equal to |
price<=9.80 |
true if price is 9.00
false if price is 9.90 |
> |
Greater than |
price>9.80 |
true if price is 9.90
false if price is 9.80 |
>= |
Greater than or equal to |
price>=9.80 |
true if price is 9.90
false if price is 9.70 |
or |
or |
price=9.80 or price=9.70 |
true if price is 9.80
false if price is 9.50 |
and |
and |
price>9.00 and price<9.90 |
true if price is 9.80
false if price is 8.50 |
mod |
Modulus (division remainder) |
5 mod 2 |
1 |
分享到:
相关推荐
### Python与XPath结合应用知识点详解 #### 一、XPath简介 XPath是一种在XML文档中查找信息的语言。尽管这里讨论的是HTML文档(通常由浏览器解析),但XPath同样适用,并且经常被用于网页抓取等场景中。XPath...
XPath 语法详解 XPath(XML Path Language)是一种用于选择 XML 文档中节点的语言。它提供了一种灵活的方式来定位 XML 文档中的节点,支持多种节点选择方式,例如通过节点名称、属性、值等。 选择节点常用的路劲...
XPath,全称为XML Path Language,是一种在XML文档中查找信息的语言。它被广泛应用于XML处理,如XSLT、XQuery以及XPointer等标准中。XPath通过路径表达式来选取XML文档中的元素、属性或其他类型的节点,使得我们可以...
**标题:** Dom4j 解析Xml文档及 XPath查询 学习笔记 **正文:** XML(eXtensible Markup Language)是一种标记语言,常用于数据交换、配置存储以及文档结构化表示。在Java世界中,解析XML文档有多种库,其中Dom4j是...
这篇笔记将围绕XML的解析方法,重点讨论DOM、XPath和XQuery这三种解析技术。 **DOM(Document Object Model)解析:** DOM是W3C推荐的一种XML文档的API,它将XML文档视为一个树形结构,每个节点代表XML文档的一个...
爬虫学习笔记(主要涉及scrapy,request,xpath,selenium等).md
编辑2.txt可能是一份XPath的学习笔记或者使用经验分享,记录了作者在学习过程中的一些发现和技巧。 掌握XPath对于处理XML数据至关重要,无论是简单的查询还是复杂的转换,都能得心应手。深入学习XPath教程,理解其...
基于崔庆才《python3网络爬虫开发实战》写的学习笔记和心得,其中包括内容和方法最总,包括代码,其中有些方法由于版本更迭做了修改。使用jupyter写的。
正则表达式 笔记整理 Python requests 模块 在用 Python 实现爬虫时,可以使用 requests 库访问资源,然后用正则表达式提取信息。 但是,这里会有一些繁琐,因为正则表达式的书写是比较严格的,万一有一个地方写错了...
1. **元素定位**:在"selenium课堂笔记_元素定位.py"中,可能讲解了如何使用不同的定位策略,如ID、name、class_name、tag_name、link_text、partial_link_text、XPath和CSS选择器来找到页面上的HTML元素。...
Scrapy爬虫笔记 Scrapy爬虫笔记是一份详细的爬虫开发笔记,涵盖了Scrapy框架的基础知识、requests库的使用、lxml解析器的应用、正则表达式的匹配等多方面的内容。本笔记将带领读者深入了解Scrapy爬虫的开发过程,...
Python 爬虫学习笔记涵盖了爬虫的基础知识、网络和前端基础、Requests 模块、请求头、GET 和 POST 请求、代理、Cookie 模拟登录、Quote 和 Unquote、登录和获取 Cookie、Post 和 Session、重试机制、JSON 和 ...
这篇笔记主要涵盖了如何查看Python和Selenium的版本,以及XPath元素抓取的高级用法,这对于进行Web自动化测试至关重要。 首先,了解你的Python环境的版本是必要的。在Windows系统中,你可以通过CMD(命令提示符)...
至于XML笔记,可能会讲解XML文档的结构、DTD和Schema验证、XPath表达式以及Java如何使用DOM、SAX或StAX解析XML文件。 通过深入学习这些笔记,你可以全面理解Java开发的基础,并掌握与数据库交互的关键技术,以及...
webdriver 元素定位笔记 WebDriver 是一个自动化测试工具,它可以模拟用户的行为来与网页交互。要想使用 WebDriver 进行自动化测试,需要首先定位到网页上的元素,然后才能对其进行操作。元素定位是 WebDriver 中...
JQuery系列教程之XPath选择符 JQuery系列教程之选择符 JQuery自动缩放页面中的图片 JQuery获取浏览器的高度和宽度 jquery获得和设置下拉框值的代码 基于jquery的跨域调用文件 ================================= 7...
例如,通过`response.xpath('//div[@id="images"]/a')`获取链接元素,然后用`link.xpath('@href').extract()`和`link.xpath('img/@src').extract()`分别获取链接地址和图片源。 10. **Scrapy Shell实践**: 在...
selenium+firefox在定位时遇到selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: ...这种定位错误一般很少出现,因为其中的xpath路径一般是通过copy xpath而不是自
Mendix 中级培训笔记 Mendix 是一种 low-code 开发平台,允许开发人员快速构建和部署应用程序。在 Mendix 中级培训中,学习者可以了解 Mendix 的基本概念和高级功能。 Mendix 项目设置 在 Mendix 中,项目设置是...
它通过XPath(XML Path Language)来定位XML文档中的节点,并使用模板来定义转换规则。XSLT的核心概念包括模板、模式匹配和变量,使得XML数据可以根据需求进行灵活的格式化和重组。 在学习XML时,了解基本语法和...