【Xpath】 xpath语法总结
节点选取
| 表达式 | 描述 | 用法 | 说明 |
|---|---|---|---|
nodename |
选取此节点的所有子节点 | div | 选取div下的所有标签 |
// |
从全局节点中选择节点,任意位置均可 | //div | 选取整个HTML页面的所有div标签 |
/ |
选取某个节点下的节点 | //head/title | 选取所有head标签下的titile标签 |
@ |
选取带某个属性的节点 | //div[@id] | 选择带有id属性的div标签 |
. |
当前节点下 | ./span | 选择当前节点下的span标签 |
谓语
| 表达式 | 用法说明 |
|---|---|
//head/meta[k]
|
选择所有head下的第k个meta标签 |
//head/meta[last()] |
选择所有head下的最后一个meta标签 |
//head/meta[position()<3] |
选择所有head下的前两个meta标签 |
//div[@id] |
选择带有id属性的div标签 |
//div[@id='u1'] |
选择所有拥有id=u1的div标签 |
通配符
| 通配符 | 描述 | 示例 | 结果 |
|---|---|---|---|
* |
匹配任意节点 | //div[@id='u1']/* |
选择所有id=’u1‘的div标签下的所有节点 |
@ |
匹配节点中的任意属性 | //meta[@*] |
选择所有拥有任意属性的meta标签 |
选取多个路径
多个xpath路径使用管道符|连接,效果等价于”或“
例如 "//div | //span" 选取所有的div和span标签
方法
| 方法名 | 描述 | 示例 | 结果 |
|---|---|---|---|
contains() |
判断一个字符串是否包含另一个字符串 | //div[contains(@id,"in")] |
选择所有id包含”in”的div节点 |
string(.) |
提取当前元素及其所有子元素的文本内容 | //div[string(.)="hellow"] |
选择所有文本内容为
”hello“的div节点
|
text() |
提取当前元素的文本内容 | //a[text()="haha"] |
选择所有文本为“haha”的a节点 |
last() |
返回当前节点集中最后一个节点的位置 | //li[last()] |
选择最后一个li节点 |
position() |
返回当前节点在同级节点中的位置 | //li[position()<3] |
选择前两个li节点 |
name() |
返回当前节点的名称 | //div[name()="content"] |
选择 名称为”content"的div节点 |
count() |
返回当前节点集中的节点数量 | //div[count(li)=3] |
选择包含三个li子节点的div节点 |
starts-with() |
判断一个字符串是否以另一个字符串开头 | //a[starts-with(@href,"http")] |
选择href属性以“http”开头的a节点 |
ends-with() |
判断一个字符串是否以另一个字符串结尾 | //a[ends-with(@href,"html")] |
选择href属性以“html”结尾的a节点 |
not() |
对当前表达式取反 | //div[not(@class)] |
选择没有class属性的节点 |
【Xpath】 xpath语法总结的更多相关文章
- Xpath基础语法学习
背景: 之所以学习Xpath,是因为在学习selenium定位页面元素,总是定位不到元素.为了更好的开展自动化测试,先学习下Xpath. 一:Xpath是什么. 1:Xpath是一门在XML文档中查找 ...
- 转载:XPath基本语法
出处:http://www.cnblogs.com/Miko2012/archive/2012/10/26/2740840.html XPath的语法最基本的节点之间用/,属性用@,还有几个函数记住了 ...
- XPath的语法
XPath 是XML的查询语言,和SQL的角色很类似.以下面XML为例,介绍XPath 的语法. <?xml version="1.0" encoding="ISO ...
- ios中XPath的语法
在XML的读写中,我们知道有Xpath的语法 1.定位节点:(/)代表绝对的路径,代表起始地位置.(//)表示文件中所有符合模式的元素都会被选出来,即使是处于树中不同的层级也会被选出来 2.KissX ...
- python爬虫xpath的语法
有朋友问我正则,,okey,其实我的正则也不好,但是python下xpath是相对较简单的 简单了解一下xpath: XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML ...
- xpath的chrome插件安装,xpath基本语法
xpath插件安装: 注意:提前安装xpath插件 (1)打开chrome浏览器 (2)点击右上角小圆点 (3)更多工具 (4)扩展程序 (5)拖拽xpath插件到扩展程序中 (6)如果crx文件失效 ...
- [Python 练习爬虫] XPATH基础语法
XPATH语法: // 定位根标签 / 往下层寻找 /text() 提取文本内容 /@xxx 提取属性内容 Sample: import requests from lxml import etree ...
- Selenium2+python自动化-xpath定位语法
前言 在上一篇简单的介绍了用工具查看目标元素的xpath地址,工具查看比较死板,不够灵活,有时候直接复制粘贴会定位不到.这个时候就需要自己手动的去写xpath了,这一篇详细讲解xpath的一些语 ...
- XPATH基本语法
1.XPATH与自动化之间的关系 1.XPATH是一门在XML文档中查找信息的语言.XPATH可用来在XML文档中对元素和属性进行遍历. 2.XPATH是用来选择"节点"的一种基于 ...
- Python爬虫基础讲解(七):xpath的语法
xpath语法 XPath使用路径表达式来选取XML文档中的节点或者节点集.这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似. 下面列出了最有用的表达式: 在下面的表格中,我们已列出了一 ...
随机推荐
- sql函数的用法
1.codename 作为翻译函数 CREATE DEFINER=`root`@`localhost` FUNCTION `codename`(`sys_code` varchar(20),`stat ...
- OSPF之路由撤销
- [rk3568][buildroot] 移除RK3568 iodomain check
1. 问题背景 RK3568 基线代码默认会起一个服务监控RK3568 iodomain,该服务间隔性输出log信息: 由于该功能非必要,故选择移除该部分逻辑 2.解决方案 查看源码编译脚本,如下图所 ...
- msfconsole的使用
msfconsole是metasploit中的一个工具: msfconsole集成了很多漏洞的利用的脚本,并且使用起来很简单的网络安全工具 在终端输入msfconsole命令即可进入msf的控制台,m ...
- Axios的相关应用
Axios 的案例应用 要求利用axios实现之前利用AJAX实现的验证用户是否登录的案例 鉴于这两种语法的相似性,只需要在AJAX里面的注册界面里面的script标签里面包含的代码修改为如下代码即可 ...
- Spring Boot 入门学习笔记
0x01 前言 大一选修课C++/JAVA二选一,选学了C++.但在后续课程中,发现JAVA的用途很多,所以简单学习了JAVA的语法.同时,也开始了我的Spring Boot 春季|家 (spri ...
- 做bad apple第二步: python如何将视频变成一帧帧的图片,如何将一帧帧的图片转为视频
直接上代码 """视频转图片""" port cv2def getphoto(video_in, video_save): cap = cv ...
- Apache Hudi 0.9.0版本重磅发布!更强大的流式数据湖平台
1. 重点特性 1.1 Spark SQL支持 0.9.0 添加了对使用 Spark SQL 的 DDL/DML 的支持,朝着使所有角色(非工程师.分析师等)更容易访问和操作 Hudi 迈出了一大步. ...
- [Linux]异常配置专题之重复配置的有效性:系统/环境变量 | hosts
1 文由 在项目中经常遇到这种情况,1个hosts文件里同一IP 或 域名存在多个映射配置,那么到底哪个有效?环境变量亦有此问题. 问题本身不难,只是为了避免混淆,进行专门记录,以加深记忆. 2 ho ...
- 10.CAS实现单点登录
1.总结: 昨天主要是了解和编写了CAS实现单点登录的代码: CAS实现单点登录的流程:用户访问资源服务器,先跳转到验证服务器验证身份通过后,认证服务器发送一个ticket给用户,用户拿着ticket ...