常用xpath选择器和css选择器总结
xpath选择器
| 表达式 | 说明 |
|---|---|
| article | 选取所有article元素的所有子节点 |
| /article | 选取根元素article |
| article/a | 选取所有属于article的子元素的a元素 |
| //div | 选取所有div子元素(不论出现在文档任何地方) |
| article//div | 选取所有属于article元素的后代的div元素,不管它出现在article之下的任何位置 |
| //@class | 选取所有名为class的属性 |
| /article/div[1] | 选取属于article子元素的第一个div元素 |
| /article/div[last()] | 选取属于article子元素的最后一个div元素 |
| /article/div[last()-1] | 选取属于article子元素的倒数第二个div元素 |
| //div[@lang] | 选取所有拥有lang属性的div元素 |
| //div[@lang='eng'] | 选取所有lang属性为eng的div元素 |
| /div/* | 选取属于div元素的所有子节点 |
| //* | 选取所有元素 |
| //div[@*] | 选取所有带(任意)属性的div元素 |
| /div/a | //div/p | 选取所有div元素的a和p元素 |
| //span | //ul | 选取文档中的span和ul元素 |
| article/div/p | //span | 选取所有属于article元素的div元素的p元素以及文档中的所有span元素 |
| //div[@id='1']/h1/text() | 获取id为1的div标签下的h1标签里的内容 |
| //span[not(@class)] | 选择不包含class属性的span节点 |
| //span[not(@class) and not(@id)] | 选择不包含class和id属性的span节点 |
| //span[not(contains(@class,'expire'))] | 选择不包含class="expire"的span |
| //span[contains(@class,'expire')] | 选择包含class="expire"的span |
| //h2[contains(text(),'Activated')] | 选择标签内容里包含Activated的h2标签 |
| //div[not(contains(text(),'activated'))] | 选择标签内容中不包含activated的div标签 |
XPATH如何选择不包含某一个属性的节点
我们知道选择包含某一特定属性的节点,可以使用例如//tbody/tr[@class]来选择。那么不含某属性的节点如何用xpath取得呢?
这里可以用到not。例如排除一个属性的节点可以使用//tbody/tr[not(@class)]来写,排除一个或者两个属性可以使用//tbody/tr[not(@class or @id)]来选择。
css 选择器
| 表达式 | 说明 |
|---|---|
| * | 选择所有节点 |
| # container | 选择id为container的节点 |
| .container | 选取所有class 包含container的节点 |
| li a | 选取所有li下的所有a节点 (子节点) |
| ul + p | 选择ul后面的第一个p元素(兄弟节点) |
| div#container > ul | 选取id为container的div的第一个ul子元素 |
| ul ~ p | 选取与ul相邻的所有p元素 |
| a[title] | 选取所有有title属性的a元素 |
| a[href="a.com"] | 选取所有href属性为a.com值的a元素 |
| a[href*="a"] | 选取所有href属性包含a的a元素 |
| a[href^="http"] | 选取所有href属性值以http开头的a元素 |
| a[href$=".jpg"] | 选取所有href属性值以.jpg结尾的a元素 |
| inupt[type=radio]:checked | 选取状态为选中的radio元素 |
| div:not(#container) | 选取所有id不为container的div元素 |
| li:nth-child(3) | 选取第三个li元素 |
| tr:nth-child(2n) | 第偶数个tr元素 |
常用xpath选择器和css选择器总结的更多相关文章
- XPath语法和CSS选择器介绍
XPath语法 XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML 文档中对元素和属性进行遍历.XPath 是 W3C XSLT 标准的主要元素,并且 XQuery 和 ...
- 最常用的五类CSS选择器
一些新手朋友对选择器一知半解,不知道在什么情况下运用什么样的选择器,这是一个比较头疼的问题,针对新手朋友,对CSS选择器作一些简单的说明,希望能对大家的学习工作有一定的帮助,更多的CSS知识请参考We ...
- jQuery选择器与CSS选择器
1. 通过位置选择的几个操作: :first:默认情况下是相对整个页面来说的第一个,如:li:first表示整个页面的第一个li元素,而ul li:first表示整个页面的第一个li元素,并且是在ul ...
- 黄聪:HtmlAgilityPack中SelectSingleNode的XPath和CSS选择器
XPath和CSS选择器 原文:http://ejohn.org/blog/xpath-css-selectors 最近,我做了很多工作来实现一个同时支持XPath和CSS 3的解析器,令我惊讶的是: ...
- CSS选择器以及优先级与匹配原理
最常用的五类CSS选择器 准确而简洁的运用CSS选择器会达到非常好的效果.我们不必通篇给每一个元素定义类(class)或ID,通过合适的组织,可以用最简单的方法实现同样的效果.在实际工作中,最常用的选 ...
- html之css选择器学习
相关内容: 什么是css选择器 标签选择器 类选择器 id选择器 并集选择器(分组选择器) 交集选择器 后代选择器 子标签选择器 属性选择器 相邻兄弟选择器 伪类选择器 伪元素选择器(伪对象选择器) ...
- CSS选择器,选择器的优先级
CSS选择器 CSS基本语法 选择器 + 声明块 选择器 - 通过CSS选择器选中页面中的指定元素,下面会重点写. 声明块 - 选择器后面跟着的是声明块,使用{}括起来,由一个个声明组成,声明由名值对 ...
- Jmeter之CSS选择器/JQuery选择器关联
选择器: CSS选择器或JQuery选择器是Jmeter支持的两种语法,下面对其两种语法进行简单介绍 CSS选择器 JQuery选择器 Chrome - 复制CSS选择器 Google Chrome在 ...
- CSS选择器(CCS第三版)
什么是选择器? CSS选择器就是使样式找到应用对象. 简单选择器(Simple selectors) 在日常开发中,最常用的选择器,也是最基本的选择器. 元素选择器(Type selector) 针对 ...
随机推荐
- 222. Getter与Setter
Description Implement a class School, including the following attributes and methods: A private attr ...
- Serializers 序列化组件
Serializers 序列化组件 为什么要用序列化组件 当我们做前后端分离的项目~~我们前后端交互一般都选择JSON数据格式,JSON是一个轻量级的数据交互格式. 那么我们给前端数据的时候都要转 ...
- BZOJ.4402.Claris的剑(组合 计数)
BZOJ 因为是本质不同,所以考虑以最小字典序计数. 假设序列最大值为\(m\),那么序列有这两种情况: \(1\ (1\ 2\ 1\ 2...)\ 2\ (3\ 2\ 3\ 2...)\ 3\ (4 ...
- LeetCode(122. 买卖股票的最佳时机 II)
问题描述 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注意:你不能同时参与多笔交易(你 ...
- tornado websocket聊天室
1.app.py #!/usr/bin/env python # -*- coding:utf-8 -*- import uuid import json import tornado.ioloop ...
- python 文件指针及文件覆盖
1.文件纯净模式延伸 r+t:可读.可写 w+t:可写.可读with open('b.txt','w+t',encoding='utf-8') as f: print(f.readable()) pr ...
- BZOJ5207 : [Jsoi2017]隧道
若$\min(n,m)<\min(n+1,m-1)$,则考虑计算左边与右边不连通的概率,然后用$1$减去它得到答案. 若$\min(n,m)\geq \min(n+1,m-1)$,则考虑计算对偶 ...
- [jzoj]5257.小X的佛光
Link https://jzoj.net/senior/#main/show/5257 Problem Solution 5~90分 我们可以根据特殊性质搞 如果数据小,直接暴力在树上面模拟一次 如 ...
- select超全超详细总结篇
1.经常使用到select,每次都是翻翻翻资料,干脆总结一下,方便日后查看. 2.checked 匹配所有选中的被选中元素(复选框.单选框等,不包括select中的option) se ...
- 【网站seo优化】SEO优化每天的工作内容是什么?
[网站seo优化]SEO优化每天的工作内容是什么?从未知的领域来到seo,感到搜索引擎无比神奇,接触seo久了,有每天必做的工作内容,大量的seo从业者,每天的工作内容大同小异,主要做的工作有通过相应 ...