CSS选择器和JSoup选择器

使用Jsoup解析和操作HTML jsoup 简介 jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 jsoup的主要功能如下:    1. 从一个URL,文件或字符串中解析HTML;    2. 使用DOM或CSS选择器来查找、取出数据;    3. 可操作HTM 阅读详情

CSS 选择器参考手册

选择器例子例子描述CSS
.class.intro选择 class=“intro” 的所有元素1
#id#firstname选择 id=“firstname” 的所有元素1
**选择所有元素。2
elementp选择所有 <p> 元素。1
element,elementdiv,p选择所有 <div> 元素和所有 <p> 元素。1
element elementdiv p选择 <div> 元素内部的所有 <p> 元素。1
element>elementdiv>p选择父元素为 <div> 元素的所有 <p> 元素。2
element+elementdiv+p选择紧接在 <div> 元素之后的所有 <p> 元素。2
[attribute][target]选择带有 target 属性所有元素。2
[attribute=value][target=_blank]选择 target="_blank" 的所有元素。2
[attribute~=value][title~=flower]选择 title 属性包含单词 “flower” 的所有元素。2
[attribute|=value][lang|=en]选择 lang 属性值以 “en” 开头的所有元素。2
:linka:link选择所有未被访问的链接。1
:visiteda:visited选择所有已被访问的链接。1
:activea:active选择活动链接。1
:hovera:hover选择鼠标指针位于其上的链接。1
:focusinput:focus选择获得焦点的 input 元素。2
:first-letterp:first-letter选择每个 <p> 元素的首字母。1
:first-linep:first-line选择每个 <p> 元素的首行。1
:first-childp:first-child选择属于父元素的第一个子元素的每个 <p> 元素。2
:beforep:before在每个 <p> 元素的内容之前插入内容。2
:after p:after在每个 <p> 元素的内容之后插入内容。2
:lang(language)p:lang(it)选择带有以 “it” 开头的 lang 属性值的每个 <p> 元素。2
element1~element2p~ul选择前面有 <p> 元素的每个 <ul> 元素。3
[attribute^=value]a[src^=“https”]选择其 src 属性值以 “https” 开头的每个 <a> 元素。3
[attribute$=value]a[src$=".pdf"]选择其 src 属性以 “.pdf” 结尾的所有 <a> 元素。3
[attribute*=value]a[src*=“abc”]选择其 src 属性中包含 “abc” 子串的每个 <a> 元素。3
:first-of-typep:first-of-type选择属于其父元素的首个 <p> 元素的每个 <p> 元素。3
:last-of-typep:last-of-type选择属于其父元素的最后 <p> 元素的每个 <p> 元素。3
:only-of-typep:only-of-type选择属于其父元素唯一的 <p> 元素的每个 <p> 元素。3
:only-childp:only-child选择属于其父元素的唯一子元素的每个 <p> 元素。3
:nth-child(n)p:nth-child(2)选择属于其父元素的第二个子元素的每个<p> 元素。3
:nth-last-child(n)p:nth-last-child(2)同上,从最后一个子元素开始计数。3
:nth-of-type(n)p:nth-of-type(2)选择属于其父元素第二个 <p> 元素的每个<p> 元素。3
:nth-last-of-type(n)p:nth-last-of-type(2)同上,但是从最后一个子元素开始计数。3
:last-childp:last-child选择属于其父元素最后一个子元素每个 <p> 元素。3
:root:root选择文档的根元素。3
:emptyp:empty选择没有子元素的每个 <p> 元素(包括文本节点)。3
:target#news:target选择当前活动的 news 元素。3
:enabledinput:enabled选择每个启用的 <input> 元素。3
:disabledinput:disabled选择每个禁用的 <input> 元素3
:checked input:checked选择每个被选中的 <input> 元素。3
:not(selector):not§选择非 <p> 元素的每个元素。3
::selection::selection选择被用户选取的元素部分。3

参考链接:
https://www.w3school.com.cn/cssref/css_selectors.asp

使用JSoup选择器语法来查找元素

jsoup elements对象支持类似于CSS (或jquery)的选择器语法,来实现非常强大和灵活的查找功能。.
这个select 方法在Document, Element,或Elements对象中都可以使用。且是上下文相关的,因此可实现指定元素的过滤,或者链式选择访问。
Select方法将返回一个Elements集合,并提供一组方法来抽取和处理结果。

Selector选择器概述
tagname: 通过标签查找元素,比如:a
ns|tag: 通过标签在命名空间查找元素,比如:可以用 fb|name 语法来查找 fb:name 元素
#id: 通过ID查找元素,比如:#logo
.class: 通过class名称查找元素,比如:.masthead
[attribute]: 利用属性查找元素,比如:[href]
[^attr]: 利用属性名前缀来查找元素,比如:可以用[^data-] 来查找带有HTML5 Dataset属性的元素
[attr=value]: 利用属性值来查找元素,比如:[width=500]
[attr^=value], [attr$=value], [attr*=value]: 利用匹配属性值开头、结尾或包含属性值来查找元素,比如:[href*=/path/]
[attr~=regex]: 利用属性值匹配正则表达式来查找元素,比如: img[src~=(?i).(png|jpe?g)]
: 这个符号将匹配所有元素

Selector选择器组合使用
el#id: 元素+ID,比如: div#logo
el.class: 元素+class,比如: div.masthead
el[attr]: 元素+class,比如: a[href]
任意组合,比如:a[href].highlight
ancestor child: 查找某个元素下子元素,比如:可以用.body p 查找在"body"元素下的所有 p元素
parent > child: 查找某个父元素下的直接子元素,比如:可以用div.content > p 查找 p 元素,也可以用body > * 查找body标签下所有直接子元素
siblingA + siblingB: 查找在A元素之前第一个同级元素B,比如:div.head + div
siblingA ~ siblingX: 查找A元素之前的同级X元素,比如:h1 ~ p
el, el, el:多个选择器组合,查找匹配任一选择器的唯一元素,例如:div.masthead, div.logo
伪选择器selectors
:lt(n): 查找哪些元素的同级索引值(它的位置在DOM树中是相对于它的父节点)小于n,比如:td:lt(3) 表示小于三列的元素
:gt(n):查找哪些元素的同级索引值大于n,比如: div p:gt(2)表示哪些div中有包含2个以上的p元素
:eq(n): 查找哪些元素的同级索引值与n相等,比如:form input:eq(1)表示包含一个input标签的Form元素
:has(seletor): 查找匹配选择器包含元素的元素,比如:div:has§表示哪些div包含了p元素
:not(selector): 查找与选择器不匹配的元素,比如: div:not(.logo) 表示不包含 class=logo 元素的所有 div 列表
:contains(text): 查找包含给定文本的元素,搜索不区分大不写,比如: p:contains(jsoup)
:containsOwn(text): 查找直接包含给定文本的元素
:matches(regex): 查找哪些元素的文本匹配指定的正则表达式,比如:div:matches((?i)login)
:matchesOwn(regex): 查找自身包含文本匹配指定正则表达式的元素
注意:上述伪选择器索引是从0开始的,也就是说第一个元素索引值为0,第二个元素index为1等

可以查看Selector API参考来了解更详细的内容
原文链接:http://www.open-open.com/jsoup/selector-syntax.htm

JSoup CSS选择器用法大全 备查,搞爬虫开发者必备 立即下载

相关推荐

从原始数据到农学模型:DJI M3M/P4M多光谱影像全链路处理实战

本文详细介绍了使用DJI M3M/P4M多光谱无人机进行农学建模的全链路流程。核心在于强调辐射标定的首要性,它将原始DN值转换为具有物理意义的反射率,是确保后续植被指数计算与模型反演准确性的基石。文章通过大疆智图和Pix4Dfields的实战演示,手把手指导完成数据处理、影像镶嵌及光谱信息提取,最终构建从光谱指数到叶面积指数等关键农学参数的反演模型,实现精准农业分析。

weixin_29281941的博客 244

Jsoup 选择器 伪选择器selectors

使用选择器语法来查找元素问题你想使用类似于CSS或jQuery的语法来查找和操作元素。方法可以使用Element.select(String selector) 和 Elements.select(String selector) 方法实现:File input = new File("/tmp/input.html");Document doc = Jsoup.parse(input, ...

weixin_30501857的博客 563

推荐系统(1):推荐系统评测

对于可以离线优化的指标,我个人的看法是应该在给定覆盖率、多样性、新颖性等限制条件下,尽量优化预测准确度。用一个数学公式表达,离线实验的优化目标是:最大化预测准确度使得 覆盖率 > A多样性 > B新颖性 > C其中,A、B、C的取值应该视不同的应用而定。

数据不会骗人 2527

jsoup获得css,Jsoup的CSS选择器代码(包括xpath代码)

可以获取对单个文本节点的对象引用。我想也许你在看着Jsoup的TextNode对象。Element的顶级文本是TextNode Object的一个实例。例如,“一些文本1”和“一些文本3”都是“< div class ='info'>”下的TextNode对象,并且“Line 1:”是“< strong>”下的TextNode Object。Element对象有一个text...

weixin_31653453的博客 1180

Cesium中实现GPU计算的泥石流地形侵蚀

通过模拟分析,可以提前识别可能发生泥石流的区域,为防灾减灾提供依据,及时发布预警,避免或减少人员伤亡和财产损失。:在建设公路、桥梁、水库等基础设施时,通过泥石流模拟分析,可以预测泥石流可能对这些设施的影响,帮助工程设计者采取合适的防护措施,确保设施的安全性。:模拟分析有助于为灾后救援工作提供科学依据,确定受灾区域的范围、救援难度等,为救援队伍制定合理的行动方案,提升救援效率。:泥石流是山区常见的地质灾害之一,通过模拟分析可以评估某一地区发生泥石流的风险,指导土地使用规划、人口迁移等决策。

weixin_43481439的博客 1321

SAP WM模块事务码(TCODE)大全

OL07 Data transfer stor.bins LDK34->RLPLA 仓储位LDK34 ->RLPLA

matinal 當冬夜漸暖 。公众号:matinal 5848

jsoup中选择器select()的使用(jquery,css选择器风格)

没用过Jquery和css的选择器,所以看了Jsoup的介绍后还是不会用select选择器,然后去看了下Jquery选择器的使用,才发觉jsoup真心强大,所以做个简单记录。 选择器简介: 选择器既可以作为元素选择器也可以作为属性选择器,允许您通过标签名、属性名或内容对 HTML 元素进行选择。 选择器允许您对 HTML 元素组或单个元素进行操作。 在 HTML DOM 术

2219

MTK PE+2.0介绍

  PE+2.0介绍:   1.      PE+2.0的状态机: 2.      升压波形协议及编码规则: PE+2.0软件设计:   在充电器类型为标充且底层电量SOC在1%—95%之间时,开始PE+2.0升压充电器的检测:首先将VBUSreset至5V,之后发送8.5的current pattern再获取此时VBUS电压和8.5V比较,若其与8.5的差值绝对值在0.5之...

raydom07的博客 1万+

使用jsoup抓取和解析网页数据

jsoup是一个强大的Java库,可以用于解析HTML文档。它提供了许多常用的API,用于选择、遍历和修改HTML文档中的元素和属性。选择器(Selector)API:用于根据CSS选择器语法选择HTML元素。属性(Attribute)API:用于获取、设置和移除HTML元素的属性。遍历(Traversal)API:用于遍历HTML文档中的元素。操作(Manipulation)API:用于修改HTML文档中的元素和属性。接下来,我们将逐一介绍这些API,并给出相应的代码示例。

小易 4104

Ubuntu零基础入门到精通【1.1讲】:什么是 Ubuntu?一文带你彻底搞懂!

🏆 本文收录于 《滚雪球学 Ubuntu》 专栏。 本专栏面向有一定计算机基础,但尚未系统学习 Linux / Ubuntu 的读者,采用“滚雪球式学习法”:先装好、再会用、再理解、再优化、再实战,带你从第一次进入 Ubuntu 桌面 / 终端开始,逐步掌握 Ubuntu 的日常使用、命令操作、软件安装、系统配置、开发环境搭建与服务器部署能力。

**My Coding Family** 5944

【YOLO系列】YOLOv8详解:模型结构、损失函数、训练方法及代码实现

YOLOv8是Ultralytics团队2023年推出的高效目标检测框架,在速度与精度平衡、多任务支持和易用性方面实现突破。模型采用改进的CSPDarknet主干网络、C2f模块和SPPF加速结构,结合PAN-FPN特征融合和解耦检测头设计,支持目标检测、实例分割和关键点检测任务。创新性地使用CIoU定位损失、Focal Loss置信度损失和动态样本分配策略,显著提升检测性能。实验表明,YOLOv8较前代模型mAP提升5-10%,在TensorRT加速下可达1000FPS,提供5种尺寸灵活选择,成为实时目标

一碗白开水一 2779

Jsoup css选择器 eq 和 Jquery 有区别

以这个网页为例: Jquery选择器如下是可以取到对应元素的: 从Jquery 的 选择器 可以看出: :eq(index) 选择器选取带有指定 index 值的元素。 index 值从 0 开始,所有第一个元素的 index 值是 0(不是 1)。 $("p:eq(1)") 返回第二个p元素 换到用jsoup 取: Document doc = Jsoup...

1034

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Java 之jsoup 三种解析

Jsoup.parse ( ) Dom选择器 css选择器 xpath选择器 1.操作xml文档 1. 解析(读取):将文档中的数据读取到内存中 2. 写入:将内存中的数据保存到xml文档中。持久化的存储 2..解析xml的方式: 1. DOM:将标记语言文档一次性加载...

wahaha 2434

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Jsoup

jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。jsoup的主要功能如下:1.从一个URL,文件或字符串中解析HTML;2.使用DOM或CSS选择器来查找、取出数据;3.可操作HTML元素、属性、文本;--Jsoup-->--测试-->--工具-->tagname: 通过标签查找元素,比如:span。

you4580的专栏 1170

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【Jsoup的学习礼记】使用选择器语法来查找元素

问题 你想使用类似于CSS或jQuery的语法来查找和操作元素。 方法 可以使用Element.select(String selector) 和 Elements.select(String selector) 方法实现: File input = new File("/tmp/input.html"); Document doc = Jsoup.parse(inpu

Yoga-jiang 748

jsoup select 选择器

采用CSS或类似jquery 选择器(selector)语法来处理HTML文档中的数据。

zhejingyuan的专栏 3918

Java Jsoup详解

一、Jsoup概述 1、简介 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。中文官网:https://www.open-open.com/jsoup/parsing-a-document.htm。 2、Jsoup的主要功能 1)从一个URL,文件...

Wjhsmart的博客 1万+

使用jsoup选择器来查找元素

问题背景 使用java爬取拉勾网上职位信息。 首先,解析拉勾网职位信息网页,找出需要提取的信息并存入数据库。 之前尝试的方法:使用过解析json文件,但每个json文件只有15条信息,而且同一电脑多次访问网站会遇到限制(反爬虫)。                            解析网页时使用正则表达式:优点:代码简介;缺点:正则表达式较为复杂,新手理解较为困难。  目前解决的办法

薛晓伟 2万+

java爬虫——JSoup

JSoup JSoup 是用于提取和处理 HTML 数据的 Java 库。 它实现了 HTML5 规范,并将 HTML 解析为与现代浏览器相同的 DOM。 该项目的网站是 jsoup.org 。 JSoup 功能 使用 JSoup,我们能够: 从 URL,文件或字符串中抓取并解析 HTML 使用 DOM 遍历或 CSS 选择器查找和提取数据 处理 HTML 元素,属性和文本 根据安全的白名单清除用户提交的内容,以防止 XSS 攻击 输出整洁的 HTML JSoup Mavven 依赖

LYQ 1万+

Jsoup和JsoupXpath来解析html和xml文件

Jsoup介绍 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。同时也可以使用jsoup来解析xml文件 主要功能 从一个URL,文件或字符串中解析HTML 使用DOM或CSS选择器来查找、取出数据使用DOM或CSS选择器来查找、取出数据 可操作...

weixin_44462294的博客 985

【Java爬虫】Jsoup

想要学习Java爬虫,肯定要学Jsoup。 jsoup是一款Java的HTML解析器,主要用来对HTML解析,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

别下完这场雪 6662

利用 Jsoup 进行高效 Web 抓取与 HTML 处理

Jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 JQuery 的操作方法来取出和操作数据。

kersixy的博客 2529

java爬虫-jsoup

文章目录内容简介主要功能 内容简介 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 主要功能 从一个URL,文件或字符串中解析HTML; 使用DOM或CSS选择器来查找、取出数据; 可操作HTML元素、属性、文本; jsoup是基于MIT协议发布的,可放心使用于商业项目。 jsoup 的主要类层次结构如下图所示: 接下来我们专门针对几种常见的应用场景举例说明j

qq_43623447的博客 8963

java爬虫——Jsoup

Jsoup是一个可以解析html的工具包,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

weixin_46111223的博客 1468
上一篇: npm install失败 npm cache clean --force
下一篇: Windows下MongoDB安装以及使用
Shannonnnn
博客等级 码龄10年 241粉丝 69原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值