Jsoup 解析 HTML

Retrofit中Jsoup解析html(二) Jsoup就像一把神奇的钥匙,专为Java开发者打造,用以解锁和操控网页的秘密。想象一下,互联网上纷繁复杂的网页信息,如同一座座藏宝阁,而Jsoup就是那张藏宝图加寻宝工具的合体。它能将看似杂乱无章的HTML代码,瞬间编织成一个井然有序的宫殿——DOM模型,让开发者如同在自家后花园漫步般自由穿梭于网页的每一个角落。 阅读详情

Jsoup 文档

方法

示例:

String html = "<p>An <a href='http://example.com/'><b>example</b></a> link.</p>";
Document doc = Jsoup.parse(html);//解析HTML字符串返回一个Document实现
Element link = doc.select("a").first();//查找第一个a元素

String text = doc.body().text(); // "An example link"//取得字符串中的文本
String linkHref = link.attr("href"); // "http://example.com/"//取得链接地址
String linkText = link.text(); // "example""//取得链接地址中的文本

String linkOuterH = link.outerHtml(); 
    // "<a href="http://example.com"><b>example</b></a>"
String linkInnerH = link.html(); // "<b>example</b>"//取得链接内的html内容

说明

上述方法是元素数据访问的核心办法。此外还其它一些方法可以使用:

这些访问器方法都有相应的setter方法来更改数据.

参见


[java]  view plain  copy
  1. jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据。请参考:http://jsoup.org/  
  2.   
  3.     jsoup的主要功能如下:  
  4.   
  5.      从一个URL,文件或字符串中解析HTML;  
  6.   
  7.      使用DOM或CSS选择器来查找、取出数据;  
  8.   
  9.      可操作HTML元素、属性、文本;  
  10.   
  11.      jsoup是基于MIT协议发布的,可放心使用于商业项目。  
  12.   
  13.     下载和安装:  
  14.   
  15.      maven安装方法:  
  16.   
  17.       把下面放入pom.xml下  
  18.   
  19.        <dependency>  
  20.   
  21.          <!-- jsoup HTML parser library @ http://jsoup.org/ -->  
  22.   
  23.         <groupId>org.jsoup</groupId>  
  24.   
  25.         <artifactId>jsoup</artifactId>  
  26.   
  27.         <version>1.5.2</version>  
  28.   
  29.        </dependency>  
  30.   
  31.      用jsoup解析html的方法如下:  
  32.   
  33.        解析url html方法  
  34.   
  35.   
  36.   
  37. Document doc =Jsoup.connect("http://example.com") .data("query","Java")   .userAgent("Mozilla")   .cookie("auth","token")   .timeout(3000)   .post();  
  38.   
  39.   
  40.      从文件中解析的方法:  
  41.   
  42.   
  43.   
  44.   
  45.   
  46. File input =newFile("/tmp/input.html");Document doc =Jsoup.parse(input,"UTF-8","http://example.com/");  
  47.   
  48.   
  49.   
  50.   
  51.  类试js  jsoup提供下面方法:  
  52.   
  53.   
  54.   
  55. getElementById(String id) 用id获得元素  
  56.   
  57. getElementsByTag(String tag) 用标签获得元素  
  58.   
  59. getElementsByClass(String className) 用class获得元素  
  60.   
  61. getElementsByAttribute(String key)  用属性获得元素  
  62.   
  63.   
  64.   
  65. 同时还提供下面的方法提供获取兄弟节点:  
  66.   
  67. siblingElements(), firstElementSibling(), lastElementSibling();nextElementSibling(), previousElementSibling()  
  68.   
  69. 用下面方法获得元素的数据:  
  70.   
  71.   
  72.   
  73. attr(String key)  获得元素的数据   
  74.   
  75. attr(String key, String value) t设置元素数据   
  76.   
  77. attributes() 获得所以属性   
  78.   
  79. id(), className()  classNames() 获得id class得值  
  80.   
  81. text()获得文本值  
  82.   
  83. text(String value) 设置文本值   
  84.   
  85. html() 获取html    
  86.   
  87. html(String value)设置html  
  88.   
  89. outerHtml() 获得内部html   
  90.   
  91. data()获得数据内容  
  92.   
  93. tag()  获得tag 和 tagName() 获得tagname  
  94.   
  95.   
  96.   
  97. 操作html提供了下面方法:  
  98.   
  99.   
  100.   
  101. append(String html), prepend(String html)  
  102.   
  103. appendText(String text), prependText(String text)  
  104.   
  105. appendElement(String tagName), prependElement(String tagName)  
  106.   
  107. html(String value)  
  108.   
  109. 通过类似jquery的方法操作html  
  110. File input =newFile("/tmp/input.html");Document doc =Jsoup.parse(input,"UTF-8","http://example.com/");Elements links = doc.select("a[href]");// a with hrefElements pngs = doc.select("img[src$=.png]");   // img with src ending .pngElement masthead = doc.select("div.masthead").first();   // div with class=mastheadElements resultLinks = doc.select("h3.r > a");// direct a after h3  
  111.   
  112.   
  113. 支持的操作有下面这些:  
  114.   
  115.   
  116.   
  117. tagname 操作tag  
  118.   
  119. ns|tag ns或tag  
  120.   
  121. #id  用id获得元素   
  122.   
  123. .class 用class获得元素  
  124.   
  125. [attribute] 属性获得元素  
  126.   
  127. [^attr]: 以attr开头的属性  
  128.   
  129. [attr=value] 属性值为value  
  130.   
  131. [attr^=value], [attr$=value], [attr*=value]   
  132.   
  133. [attr~=regex]正则  
  134.   
  135. *:所以的标签   
  136.   
  137. 选择组合  
  138. el#id el和id定位  
  139.   
  140. el.class e1和class定位  
  141.   
  142. el[attr] e1和属性定位  
  143.   
  144. ancestor child ancestor下面的child  
  145.   
  146. 等等  


Android中的JSoup HTML解析实践指南 JSoup是一个强大的库,最初由Jonathan Hedley在2009年创建,它允许用户通过DOM操作方式解析和操作HTML文档。这个库受到了Apache许可的保护,是开源的,这意味着任何人都可以自由地使用、修改和分发该代码。由于其轻量级、快速以及强大的API,JSoup被广泛应用于各种Java项目中,特别是在Android开发中,用来提取和操作网页数据,甚至进行简单的爬虫开发。在实际开发中,正确处理线程和UI更新机制是非常重要的。最佳实践通常包括:在后台线程中处理耗时任务和数据解析。 阅读详情

相关推荐

DeepSeek+知网研学:三步搞定文献矩阵与对比分析(实战指南)

本文提供了一套高效实用的文献管理分析实战指南,详细介绍了如何结合DeepSeek大模型与知网研学平台,通过三个核心步骤快速完成文献梳理。该方法能自动提炼文献核心要素、生成结构化对比矩阵,并辅助发现研究空白,显著提升学术研究者的文献分析效率与深度。

weixin_29061509的博客 491

Jsoup—解析HTML页面数据的工具

介绍:GitHub源码 点击查看代码jar包 点击下载Jsoup是一款比较好的Java版HTML解析器。可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。jSOUP主要功能从一个URL,文件或字符串中解析HTML; 使用DOM或CSS选择器来查找、取出数据; 可操作HTML元素、属性、文本;依赖

程序病毒小队的博客 3304

未来智能家居解决方案:AI应用架构师的前沿探索

当你加班到深夜回家时,门锁自动识别你的脚步声解锁,玄关灯渐亮成你最爱的暖光,空调早已调到25℃(你夏天的习惯温度),音箱播放着最近循环的爵士乐,茶几上的智能水壶烧好了温水——这不是科幻电影,而是未来智能家居的日常。如何让“冰冷的设备”变成“懂你的伙伴”。我们将深入探讨五大前沿技术(边缘AI、多模态融合、联邦学习、数字孪生、个性化推荐)的底层原理,用“家里的小管家”“邻居互相学习”等生活化比喻简化复杂概念,结合代码示例与架构图还原实现流程,并通过智能卧室、智能厨房等真实案例展示落地路径。

AI天才研究院 1411

使用Jsoup解析Html

在抓取网络上的资源时,我们经常会和网页打交道,很多时候我们都需要网页上的资源进行抓取,这个时候Jsoup就能帮助我们快速解析Html页面的结构,并分离出我们想要的资源。解析一个Html字符串String html = "<html><head><title>First parse</title></head>" + "<body><p>Parsed HTML into a doc.</p></bo

正在加载中 836

ISP图像处理Verilog仿真框架搭建(附代码)

基于Verilog的图像处理仿真框架搭建

路漫漫其修远兮,吾将上下而求索 1898

MAX96712在车载摄像头系统中的带宽分配与传输能力计算解析

在计算摄像头带宽与传输接口的关系时,需要考虑视频流的像素分辨率、帧率、颜色深度等因素。以 MAX96712 这种 GMSL2 产品为例,它支持每个链路在正向方向以 3Gbps 或 6Gbps 的固定速率工作。

weixin_43199439的博客 3331

Jsoup解析HTML实例及文档方法详解

Jsoup解析HTML实例及文档方法详解 http://www.jb51.net/article/43485.htm

YY的专栏 740

双有源桥变换器(DAB)TPS控制:从理论建模到Simulink/PSIM仿真实践

本文深入探讨了双有源桥变换器(DAB)的三重移相(TPS)控制技术,从理论建模到仿真实现。文章详细分析了TPS相比SPS和DPS的优势,阐述了其12种工况的划分逻辑与电流应力最优调制策略,并提供了在Simulink和PSIM平台搭建仿真模型的详细步骤与实战经验,帮助工程师掌握这一高效控制方法。

white的博客 584

使用Jsoup来解析HTML

使用Jsoup来解析HTML 1. 概要 Jsoup是一个开源Java库,主要用于从HTML提取数据。允许您操作和输出HTML,它有稳定的开发线、优秀的文档和流畅灵活的API,Jsoup还可以用于解析和构建XML。 在本教程中,我们将使用Spring博客演示一个抓取案例,它演示了jsoup的几个特性: 加载:抓取和解析HTML到一个文档 筛选:选择所需的数据到元素中并遍历它 提取:获取节点的属性、文本和HTML 修改:添加/编辑/删除节点并编辑它们的属性 2. Maven 依赖 Jsoup Maven

kerongao的博客 3542

【STM32项目】基于AI技术的多功能消防机器人(完整工程资料源码)

机器人通过巡逻扫描环境空间与障碍物、定位导航、探测物体/环境进行建模/自动地图测绘、扫描火焰、获取温湿度大小、获取空气安全情况来判断当前环境地点是否安全,检测到温度过高或检测到易燃、烟雾、有毒气体或摄像头识别到火焰时能够通过高压水泵喷射器来实现火焰隔离工作,蜂鸣器进行现场鸣笛报警,同时将当前环境温湿度大小、空气情况、环境地图、是否安全信息,将各个传感器来接收获取到的信息,实时发送到用户手机中的微信小程序,实现与用户远程监视功能,用户同时也能通过手机与电脑远程下发命令来操控机器人来实现交互功能

嵌入式技术开发 1万+

【网络安全】AntSword蚁剑新手快速入门(附实战案例)

蚁剑(AntSword)是一款开源的跨平台WebShell管理工具,它主要面向于合法授权的渗透测试安全人员以及进行常规操作的网站管理员。蚁剑的特点主要有如下几点:1.支持多平台。包括macOS、Linux 32位、Linux 64位、Linux armv7l、Linux arm64、Windows 32位、Windows 64位。2.完善的文档。中国蚁剑文档地址。3.多项功能。文件管理功能、虚拟终端功能、数据库管理功能。4.内置代理功能。

等风来 1万+

Java通过Jsoup解析HTML文件

Jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。二、Jsoup的主要功能1、从一个URL,文件或字符串中解析HTML2、使用DOM或CSS选择器来查找、取出数据3、可操作HTML元素、属性、文本注意:jsoup是基于MIT协议发布的,可放心使用于商业项目。三、Jsoup用法简介。

2401_89693527的博客 1312

【安全启动】HSM安全启动原理与技术实现白皮书

摘要: 安全启动(Secure Boot)与度量启动(Measured Boot)通过硬件信任根(HSM/TPM等)确保系统启动链路的可信性,实现代码验证与状态记录。HSM作为核心组件,承担密钥保护、签名验证和密码运算任务,与SHE、TPM等协同构建分层信任链。通用计算与嵌入式/汽车场景的启动流程差异显著,前者依赖TPM的PCR度量,后者以HSM为核心实现硬件级安全闭环。工程实践中需权衡性能、合规性及抗攻击能力,并结合后量子密码(PQC)等演进技术优化方案。

weixin_46481662的博客 837

Java html解析器之Jsoup

提供解析html、操作DOM的api,类似jquery的方法。 自动校正html中错误语法。甚至只有div元素,都会被补充成完整完整。 引入maven项目: <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <ve...

千霜的博客 3970

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Jsoup解析HTML片段

import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; public class BodyFragmentTest { public static void main(String[] args) { String html = "&lt;div&gt;&lt;p&...

look4liming的专栏 1257

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

jsoup 读取解析html,jsoup解析HTML

Connection conn =Jsoup.connect(String url);conn.data("txtBill", key);//设置关键字查询字段Document doc = null;doc= conn.timeout(100000).post();//设置请求类型为post型或者get型,超时100000毫秒results = doc.select(TagName);//处理返回...

weixin_39896256的博客 675

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

jsoup解析html

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

zhang6560329的专栏 652

Jsoup 解析HTML

前言:       jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。      设置批量的代理ip进行请求连接,可以模拟爬虫进行元素的简单抓取。 1.pom依赖 &lt;dependency&gt; &lt;groupId&gt;org.j...

湖人•总冠军 548

Jsoup解析完整的HTML

import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class JsoupParserTest { public static void main(String[] args) { StringBuilder buf = new StringBuilder(); buf.append("&lt;html&g...

look4liming的专栏 596

网络爬虫——Jsoup解析HTML

给定 HTML 字符串,可以使用 org.jsoup.Jsoup 类中的 parse(String html)方法,将 String 类型的 HTML 文件转化成 Document 类型。这四种方法传递的参数分别是 Document 类型 的 HTML 文档、Elements 类型的元素集合、String 类型的 HTML 字符串和 String 类型 的 URL。而 JsoupXpath 则是在 Jsoup 的基础上扩展的支持 Xpath 语法的 HTML 文件解析器。示例,依旧解析课程URL。

吴声子夜歌的博客 3298

android通过Jsoup解析Html表格

看代码吧,可解析表中的label text button 自己根据需要再添加,呵呵 import java.util.ArrayList; import java.util.List; import org.apache.http.NameValuePair; import org.apache.http.message.BasicNameValuePair; import org.

q757989418的专栏 3307

Java 使用jsoup解析Html

使用 Jsoup 解析 HTML 的 Java 教程 在当今的网络编程中,解析 HTML 是一个非常常见的需求,尤其是在数据抓取(Web Scraping)和解析网页内容等场景中。Java 提供了许多工具和库,其中 Jsoup 是一个流行的库,用于处理和解析 HTML 文档。本文将详细介绍如何使用 Jsoup 进行 HTM...

weixin_34552443的博客 325

Jsoup: 一款Java的HTML解析器

本文介绍了Java HTML解析器jsoup的基本使用方法。jsoup提供了类似jQuery的API,可以解析URL、HTML或XML文档。主要内容包括:1) 项目配置,需将jar包导入libs目录;2) 核心对象说明:Jsoup工具类、Document文档对象、Elements集合、Element元素对象及其常用方法;3) 两种快速查询方式:CSS选择器语法和XPath路径语言(需额外jar包支持)。jsoup能够方便地通过DOM操作提取和操作网页数据,适合Java环境下的网页抓取和解析需求。

2301_76781059的博客 793

使用JSoup解析HTML文件

HTML是WEB的核心,互联网中你看到的所有页面都是HTML,不管它们是由JavaScript,JSP,PHP,ASP或者是别的什么WEB技术动态生成的。你的浏览器会去解析HTML并替你去渲染它们。不过如果你需要自己在Java程序中解析HTML文档并查找某些元素,标签,属性或者检查某个特定的元素是否存在的话,那又该如何呢?如果你已经使用Java编程多年了,我相信你肯定试过去解析XML,也使用过类似

Yoga-jiang 908
上一篇: 基于RESTful API的TCC补偿模式 分布式事务
下一篇: 导出csdn博客
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值