
类型: 小说阅读 版本: V7.7
大小: 42.1 时间: 2025-11-18





HtmlCleaner是一个免费开源的适用范围广的Java语言Html文档解析器,它能重新整理HTML文档的每个元素并生成结构良好(Well-Formed)的HTML文档。默认它遵循的规则是类似于大部份web浏览器为创文档对象模型所使用的规则,户可以提供自定义tag和规则组来进行过滤和匹配。
1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。副业挣钱带娃两不误
2.提供基本HtmlCleanerDOM的XPath支持
3.使用XML配置文件让创建定制tag变得更加容易
4.修复多个bug以及API改进
写一个测试用的html文件:html-clean-demo.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
< html xmlns = "http://www.w3.org/1999/xhtml " xml:lang = "zh-CN" dir = "ltr" >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=GBK" />
< meta http-equiv = "Content-Language" content = "zh-CN" />
< title > html clean demo </ title >
</ head >
< body >
< div class = "d_1" >
< ul >
< li > bar </ li >
< li > foo </ li >
< li > gzz </ li >
</ ul >
</ div >
< div >
< ul >
< li > < a name = "my_href" href = "1.html" > text-1 </ a > </ li >
< li > < a name = "my_href" href = "2.html" > text-2 </ a > </ li >
< li > < a name = "my_href" href = "3.html" > text-3 </ a > </ li >
< li > < a name = "my_href" href = "4.html" > text-4 </ a > </ li >
</ ul >
</ div >
</ body >
</ html >
Html代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
<meta http-equiv="Content-Language" content="zh-CN"/>
<title>html clean demo</title>
</head>
<body>
<div class="d_1">
<ul>
<li>bar</li>
<li>foo</li>
<li>gzz</li>
</ul>
</div>
<div>
<ul>
<li><a name="my_href" href="1.html">text-1</a></li>
<li><a name="my_href" href="2.html">text-2</a></li>
<li><a name="my_href" href="3.html">text-3</a></li>
<li><a name="my_href" href="4.html">text-4</a></li>
</ul>
</div>
</body>
</html>
模拟需求:取出title,name="my_href"的链接,div的class="d_1"下的所有li内容。下面用htmlcleaner写代码,HtmlCleanerDemo.java
package com.chenlb;
import java.io.File;
import org.htmlcleaner.HtmlCleaner;
import org.htmlcleaner.TagNode;
/**
* htmlcleaner 使用示例.
*
* @author chenlb 2008-11-26 下午02:12:02
*/
public class HtmlCleanerDemo {
public static void main(String[] args) throws Exception {
HtmlCleaner cleaner = new HtmlCleaner();
TagNode node = cleaner.clean(new File( "html/html-clean-demo.html" ), "GBK" );
//按tag取.
Object[] ns = node.getElementsByName("title" , true ); //标题
if (ns.length > 0 ) {
System.out.println("title=" +((TagNode)ns[ 0 ]).getText());
}
System.out.println("ul/li:" );
//按xpath取
ns = node.evaluateXPath("//div[@class='d_1']//li" );
for (Object on : ns) {
TagNode n = (TagNode) on;
System.out.println(" text=" +n.getText());
}
System.out.println("a:" );
//按属性值取
ns = node.getElementsByAttValue("name" , "my_href" , true , true );
for (Object on : ns) {
TagNode n = (TagNode) on;
System.out.println(" href=" +n.getAttributeByName( "href" )+ ", text=" +n.getText());
}
}
}
Java代码
package com.chenlb;
import java.io.File;
import org.htmlcleaner.HtmlCleaner;
import org.htmlcleaner.TagNode;
/**
* htmlcleaner 使用示例.
*
* @author chenlb 2008-11-26 下午02:12:02
*/
public class HtmlCleanerDemo {
public static void main(String[] args) throws Exception {
HtmlCleaner cleaner = new HtmlCleaner();
TagNode node = cleaner.clean(new File("html/html-clean-demo.html"), "GBK");
//按tag取.
Object[] ns = node.getElementsByName("title", true); //标题
if(ns.length > 0) {
System.out.println("title="+((TagNode)ns[0]).getText());
}
System.out.println("ul/li:");
//按xpath取
ns = node.evaluateXPath("//div[@class='d_1']//li");
for(Object on : ns) {
TagNode n = (TagNode) on;
System.out.println(" text="+n.getText());
}
System.out.println("a:");
//按属性值取
ns = node.getElementsByAttValue("name", "my_href", true, true);
for(Object on : ns) {
TagNode n = (TagNode) on;
System.out.println(" href="+n.getAttributeByName("href")+", text="+n.getText());
}
}
}
cleaner.clean()中的参数,可以是文件,可以是url,可以是字符串内容。个人认为:比较常用的应该是evaluateXPath、getElementsByAttValue、getElementsByName方法了。另外说明下,htmlcleaner对不规范的html兼容性比较好。
它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。
自己有辆私家车怎么赚钱
344.0M
这款游戏是超好玩的三国志策略类手机游戏。以最新的2020最新版为亮点,这个版本是2017的版本的玩法,虽然没有新增加什么东西,不过这个版本在剧情上面比现在的三国...
免会费的手机兼职
286.3M
夜趣相机APP是一款便捷的图片处理工具,支持自定义水印、去水印、拍照记录等功能,操作简单高效,满足用户日常图片编辑和美化需求。夜趣相机APP功能介绍支持自定义水...
兼职自媒体写稿
1,343.9M
建筑行业的经常的是需要看各种各样的建筑专门的cad图纸的,在手机上面就是需要有这么的一款可以看cad图纸以及Revit云浏览工具,同时是可以保证你的隐私以及秘密...
魔界村ol 赚钱
1,750.8M
篮球明星争霸战是一款篮球系列游戏,篮球明星云集,数百个独特的、全动画明星球员任你挑选;用你的手指一挥就能造就惊心动魄的精彩打法,欢迎下载体验。篮球明星争霸战游戏...
073棋牌在线登录
1,358.7M
是一款全新的语音与社交结合的聊天软件,软件中为用户开设单独的房间进行语音交友,同时还附有动态功能随时关注喜欢的人,让你可以了解对方的最新状况。响指交友介绍声音控...
朗诵怎么赚钱
1,921.0M
森太生活安卓版是一款智能生活管家,软件支持天气实时数据、智能设备操控、家电控制等多种操作,用户只需下载森太生活软件,就能轻松玩转所有家电,为您提供美好生活。软件...
来钱快投资小
932.0M
烹调上菜美味2是一款非常好玩的模拟经营游戏,玩家在游戏中餐厅的厨师,需要利用各种食材满足顾客需要,小编为你提供烹调上菜美味23DM汉化组汉化补丁,完全简体中文,...
手机微信能赚钱的软件免费下载
821.6M
浆果旋律是一款全新上线的休闲音游,游戏内汇聚了海量精选歌曲,给游戏增添了更多的乐趣,精美的画面配上跳跃的音乐节奏给玩家带来更多的新鲜感。浆果旋律游戏介绍全新弧线...
网上小额投资理财
63.4M
电脑万能亮度调节器是一款屏幕亮度调节软件,独创支持屏幕变暗、变亮任意调节。显示器亮度调节器独家技术,对硬件、系统毫无影响,而且精致小巧无毒,使用操作极为简单保护...
手机游戏怎样赚钱
431.8M
知疑学生端app是一款考研知识问答软件,考生直接对考研的问题进行提问,这里有老师提供专业的辅导和问题答疑,大家一起分享考研的经验,有需要的朋友赶紧下载吧。知疑学...
永年招工信息兼职
331.1M
音乐艺考app为艺考生朋友带来了丰富的考试信息,可以通过软件在线学习视频课程,也可以了解你感兴趣的院校!软件介绍音乐艺考全科在线训练、考试。海量学习资源,名师公...
实体店扫码领红包
1,441.8M
出门在外,便捷的汽车服务能为车主节省很多时间,小编推荐小鲸娱app,一款汽车车主打造的多功能服务平台,包括车辆定位,加油卡充值等等,改变您的车生活!小鲸娱,首创...
ai绘画赚钱方法是什么
163.1M
宝宝家庭清理是一款非常休闲益智的清理类型的游戏,玩家可以在游戏里面体会到如何整理房间,清理厨房和床铺,洗涤卫生间等等,在诺大的房间里面合理安排清洁程序。游戏介绍...
淘新闻挣钱软件下载
1,965.5M
抖萌face安卓版是一款使用十分方便的手机自拍神器,软件支持多种滤镜、支持多种贴纸免费使用。用户可以使用软件将自己的自拍照美化编辑成多种风格。喜欢自拍的帅哥美女...
拍什么小视频可以赚钱
129.7M
这是一个在线教育学习平台,通过这个app你可以找到非常多的学习资源,学生可以直接登录这个平台,非常好用的功能,完成自己的作业。软件介绍1、一个智慧校园服务平台,...
陌陌彩票注册送28
2025/09/20 18:35
能赚人民币的游戏
2025/09/20 13:03
阿里巴巴商品推广佣金
2025/09/13 14:29
赚钱的游戏日赚上千
2025/09/20 12:47
网上兼职小时工打字
2025/09/30 18:23
投资小收益稳
2025/09/28 06:40
米赚真的怎么赚钱吗
2025/09/27 04:21
学校低成本赚钱项目
2025/09/16 00:45
吉祥棋牌怎么开亲友圈
2025/09/21 19:18
新东方培训机构官网兼职
2025/09/30 04:29
棋牌游戏怎么开发定制
2025/09/21 08:13
宝妈怎么赚钱啊
2025/09/15 16:44
养10只英短挣钱吗
2025/09/25 21:52
上海家佳购能赚钱吗
2025/09/17 23:22
挣钱的手游有哪些
2025/09/25 16:55
挣钱的手游有哪些
2025/09/25 16:55更新
悠悠桌面闹钟是一款电脑桌面闹钟软件,这款软件可以随意调整闹钟时间,还能添加闹钟铃声,操作简单,需要的用户欢迎下载使用!软件介绍悠悠桌面闹钟是一款简单实用的桌面闹...
支持 ( 132 ) 盖楼(回复)
支持 ( 41 ) 盖楼(回复)
支持 ( 76 ) 盖楼(回复)
支持 ( 137 ) 盖楼(回复)
支持 ( 109 ) 盖楼(回复)
支持 ( 56 ) 盖楼(回复)
支持 ( 38 ) 盖楼(回复)
支持 ( 200 ) 盖楼(回复)
支持 ( 161 ) 盖楼(回复)
支持 ( 5 ) 盖楼(回复)
支持 ( 145 ) 盖楼(回复)
支持 ( 78 ) 盖楼(回复)
支持 ( 193 ) 盖楼(回复)
支持 ( 88 ) 盖楼(回复)
支持 ( 164 ) 盖楼(回复)
支持 ( 193 ) 盖楼(回复)
支持 ( 153 ) 盖楼(回复)
支持 ( 77 ) 盖楼(回复)
支持 ( 78 ) 盖楼(回复)
支持 ( 82 ) 盖楼(回复)