jsoup select 选择器(Day_02)
“自己”这个东西是看不见的,撞上一些别的什么,反弹回来,才会了解“自己”。
所以,跟很强的东西、可怕的东西、水准很高的东西相碰撞,然后才知道“自己”是什么,这才是自我 。
运行环境
JDK8 + IntelliJ IDEA 2018.3
利用方法
Element.select(String selector)和Elements.select(String selector)。
jar包文件
https://files.cnblogs.com/files/papercy/jsoup_jar%E5%8C%85.rar
描述
Jsoup的元素支持类似CSS或(jquery)的选择器语法的查找匹配的元素,可实现功能强大且鲁棒性好的查询。
Select方法可作用于Document、Elements或Element,且是上下文相关的,因此可实现指定元素的过滤,或者链式选择访问。
以下共介绍使用十种方法获取 xml元素
XML代码
<?xml version="1.0" encoding="UTF-8"?>
<students>
<student id="1">
<name>feifeiye</name>
<age>19</age>
<sex>nv</sex>
</student>
<student id="2" class="two">
<name>papercy</name>
<age id="3" text-color="red" >19</age>
<sex>nan</sex>
</student>
</students>
JAVA代码实现
public static void main(String[] args) { /*获取document文档,反射path*/ String path=JsoupDemo1.class.getClassLoader().getResource("Students.xml").getPath(); try {
Document document = Jsoup.parse(new File(path),"utf-8"); /*获取elements/element*/ Elements element=document.getAllElements(); System.out.println("element:"+element);
} catch (IOException e) {
e.printStackTrace();
}
}
选择器使用
- 使用 * 选择器
Elements elements = document.select("*");
System.out.println("element * 号选择器:"+elements); 使用class 选择器
Elements elements1 = document.select(".two");
System.out.println("element class 选择器:"+elements1);
- 使用ID 选择器
Elements element1 = document.select("#1");
System.out.println("element1 id 选择器:"+element1);
- 使用 Tag 选择器
Elements elements2 = document.select("name");
System.out.println("eleemnts2 tag 选择器:"+elements2);
- 使用 [attribute]: 利用属性
Elements elements3 = document.select("[text-color]"); System.out.println("elements3 [attribute] 选择器:"+elements3);
- 使用 [^attr=value] : 利用属性值
Elements elements4 = document.select("[text-color=red]"); System.out.println("elements4 [^attr=value] 选择器:"+elements4);
- 使用 parent > child : 查找某个父元素下的直接子元素
Elements elements5 = document.select("student>sex");
System.out.println("element5 parent > child 选择器 :"+elements5);
- 使用 ancestor child : (查找某个元素下子元素)
- Elements element2 = document.select("students name"); System.out.println("element2 ancestor child 选择器:"+element2);
- 使用 containsOwn(text):查找直接包含给定文本的元素
Elements element3 = document.select("name:contains(feifeiye)"); System.out.println("element3 containsOwn(text)选择器:"+element3);
- 使用 eq(n): 查找哪些元素的同级索引值与n相等
Elements elements6 = document.select("student age:eq(1)"); System.out.println("elements6 eq(n)选择器:"+elements6);
心得
希望本无所谓有,无所谓无的。这正如地上的路;其实地上本没有路,走的人多了,也便成了路。
很多东西,只有花时间去做了,才能有个成功与否,站着看的永远比走的慢。或许看上去很厉害,很难的东西,你去实践的时候会发现没有想象中的难。
会不会是取决你做了没做,而不是想了没想。
jsoup select 选择器(Day_02)的更多相关文章
- jsoup select 选择器
转载自:http://blog.csdn.net/zhejingyuan/article/details/11801027 方法 利用方法:Element.select(String selector ...
- (三)Jsoup 使用选择器语法查找 DOM 元素
第一节: Jsoup 使用选择器语法查找 DOM 元素 Jsoup使用选择器语法查找DOM元素 我们前面通过标签名,Id,Class样式等来搜索DOM,这些是不能满足实际开发需求的, 很多时候我们需要 ...
- Jsoup进阶选择器
package com.open1111.jsoup; import org.apache.http.HttpEntity;import org.apache.http.client.methods. ...
- org.jsoup.select.Selector
org.jsoup.select.Selector CSS-like element selector, that finds elements matching a query. Selector ...
- elementUI 学习入门之 Select 选择器
Select 选择器 基础用法 <el-select v-model="val1" placeholder="请输入"> <el-option ...
- Jsoup 标签选择器 选择img标签中src的值
package com.enation.newtest; import java.io.BufferedReader; import java.io.File; import java.io.File ...
- element UI中的select选择器的change方法需要传递多个值
如果直接调用change事件,不传任何参数,则可以获取到当前选中的值(因为默认会将event参数传递过去) 场景: 你需要将select选择器 ”选中的当前元素“ 和 ”其他你需要的值“ 一起传递过去 ...
- Select 选择器
Select 选择器 当选项过多时,使用下拉菜单展示并选择内容. 基础用法 适用广泛的基础单选 v-model的值为当前被选中的el-option的 value 属性值 <template> ...
- css子选择器 :frist-child :nth-child(n) :nth-of-type(n) ::select选择器
记录一下前一段时间使用.学习的几种选择器. 1. :frist-child 选择器n 比如<ul><li></li> <li></li> & ...
随机推荐
- 案例 | 荔枝微课基于 kubernetes 搭建分布式压测系统
王诚强,荔枝微课基础架构负责人.热衷于基础技术研发推广,致力于提供稳定高效的基础架构,推进了荔枝微课集群化从0到1的发展,云原生架构持续演进的实践者. 本文根据2021年4月10日深圳站举办的[腾讯云 ...
- 【Android实习】20场面试斩获大厂offer,我学会了什么
前言 很高兴遇见你~ 先说一下笔者春招实习的情况:从三月初到四月半,经历了近20场面试,一共面试了五家企业,通过了腾讯.字节.蚂蚁.美团的面试,虎牙在一面之后拒了二面邀请. 金三银四,笔者不是在面试中 ...
- 大学四年,总结一套适合小白的Java自学路线和方法
前言篇 大家好,我是bigsai 好久不见,甚是想念,文章同时收录在回车课堂(文底阅读原文可达). 无论你是大学生还是在职人员,想学Java时,都会面临两个选择,自学或者报班.报班通常太费钱,时间又不 ...
- java POI(二)
name.xslx 1 public class Demo6 { 2 3 public static void main(String[] args) throws IOException { 4 I ...
- Go-15-flag.String 获取系统参数
场景: 启动应用程序时,需要传入系统参数.例如:./start --b /notebook --p true --n 8 package main import ( "fmt" f ...
- JDBC_13_封装JDBC工具类
封装JDBC工具类 代码: import java.sql.*; /** * JDBC工具类,简化JDBC编程 */ public class DBUtil { //工具类中的构造方法都是私有的,因为 ...
- hdfs文件系统挂载
简要说明: 使用fuse将hdfs文件系统挂载远程服务器上,像使用nfs和glusterfs那样可以挂载共享存储 fuse安装 fuse可以编译安装或者通过CDH或ambari源yum安装 此处使用a ...
- Relatives(容斥)
Relatives Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15708 Accepted: 7966 Descri ...
- [VSC] HTML打叹号无法自动提示默认框架
一般的, 在 VSC 中编辑 HTML 文档时, 打一个叹号 '!', 就会提示, 可生成默认代码, 如: 采纳建议后, 是这样: 问题: 如果出现打叹号无法出现提示的情况, 首先, 请检查当前的语言 ...
- 【ElasticSearch】索引重建
ElasticSearch索引重建 ElasticSearch索引一旦建立,便不可修改索引字段类型(允许增加或者删除该字段) 例如从Integer类型修改为long类型,这是不被允许的,错误信息如下: ...