1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。小鸭天猫助手1.0.7736.19810 官方最新版
2.提供基本HtmlCleanerDOM的XPath支持
3.使用XML配置文件让创建定制tag变得更加容易
4.修复多个bug以及API改进
HtmlCleaner是一个免费开源的适用范围广的Java语言Html文档解析器,它能重新整理HTML文档的每个元素并生成结构良好(Well-Formed)的HTML文档。默认它遵循的规则是类似于大部份web浏览器为创文档对象模型所使用的规则,户可以提供自定义tag和规则组来进行过滤和匹配。
写一个测试用的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。
乐鱼被封了么 斗仙界九游版 九游会十大品牌 亚博官方网页版 亚博首页手机站展开内容
雷霆狂暴gm版下载-雷霆狂暴gm商城版1.0 免费版
国家级交通运输教育网app1.2.3 安卓版
空调云运维管理系统1.6.0 安卓版
撞头足球2游戏下载-撞头足球2(Head Ball 2)1.594 安卓版
面面视频新版下载-面面视频app2.0.4 安卓最新版
百度拇指医生官网下载-拇指医生ios版3.6.4 苹果版
易购宝贝app-易购宝贝2.1.1 安卓版
网易堡垒前线游戏下载-网易堡垒前线3.3.1941安卓版
草莓消消乐下载-草莓消消乐红包版1.0.7 最新版
basic4android下载-B4A开发工具(basic4android)11.0 官方版
鹤云教app下载安装-鹤壁智慧教育云平台(鹤云教)1.4.2 官方最新版
2345王牌输入法电脑版下载-2345王牌输入法7.4.8215 官方最新版
鹅鸭杀大招版下载-鹅鸭杀大招版1.0.3 最新版
财迷之家app-财迷之家返利平台1.22 安卓中文版
你又把天聊死了暴走表情下载-你又把天聊死了暴走表情包1.0高清污水印版
柳州公交行app1.0手机ios版
星阵围棋app下载-星阵围棋陪练手机版3.20.6 安卓版
疾风大冒险送剑圣版-疾风大冒险送冲版1.0 福利版
红铃铛分类信息采集器-吾爱分类信息采集软件1.6.5.9 免费破解版
平安云厨智慧食堂app下载-平安云厨智慧食堂订餐app1.3.2 最新版
音乐驱魔人游戏下载-The Exorcism(音乐驱魔人手游)1.1.4 安卓版
枫叶HD高清视频转换器下载-枫叶HD高清视频转换器12.2.5.0免费版
格雷盒子孩子端ios下载-格雷盒子孩子端苹果app1.0.4 官方ios版
生活酱下载-生活酱app2.0.0 安卓版
蓝月传奇礼包版-蓝月传奇九游版2.0428.0317安卓版
安司密信免费版下载-安司密信免费版2.6.25.210713 官网最新版
7.6/1,090.6M
安司密信电脑版是一款匿名聊天通讯软件,具有无痕聊天的功能,信息加密,阅后即焚,喜欢的朋友可以来下载使用!电脑运行需下载模拟器模拟器大全|最好的模拟器安司密信电脑...
汽配通汽配管理软件下载-汽配通汽配管理软件13.60 绿色版
9.2/1,691.4M
8年专业汽配汽修软件的成熟开发经验,不断完善更新的技术体系,保障了汽配通的先进性和实用性,真正中小企业免费实用的汽配专业软件,有需要的赶紧来东坡下载吧。汽配通汽...
三国战争折扣最低的平台下载-三国战争折扣版本25.683 最新版
9.0/1,545.5M
三国战争折扣版是一个经典三国策略战争游戏,该版本充值有折扣,平民玩家也可以玩的很爽,非常注重策略玩法,需要武将和兵种合理搭配,游戏可玩性比较高。三国战争游戏介绍...
虚拟偶像超级索尼子全服装解锁存档-虚拟偶像超级索尼子通关存档最新版
8.2/1,063.4M
虚拟偶像超级索尼子想必大家都是知道的!现在为大家介绍的是最新的虚拟偶像超级索尼子全服装解锁存档,他可以让你不用再过繁琐的操作,直接的可以在各个存档中跳跃!感兴趣...
无字天书1.4.3破解地图下载-无字天书1.4.3破解版【破解英雄+技能免CD+定制脚本】
7.5/6.0M
无字天书是防守型地图中,非常好玩的一款了。今天小编这里也为大家带来了1.4.3破解版哟!想要体验到超多破解的乐趣吗?想要拥有P闪无敌等功能吗?那就快来本站免费下...
杭州市民卡扫码付客户端-杭州市民卡扫码付app6.0.9 安卓官方版
9.3/713.0M
杭州市民卡扫码付app,杭州人出门再也不用带钱包了,只需要拿出手机扫一扫,就能快带完成支付,比支付宝微信更好用,专属于杭州市民市的支付客户端,首次使用时要记得输...
9.8/164.6M
记步多多app是一款非常优质的计步软件,用户下载这款软件能够在上面精准计步,还能够设置每日的运动目标,帮助用户健康的减肥运动,非常的方便。记步多多app功能运动...
7.8/1,550.6M
这个是智慧云教学助手,在上面你可以查看很多教育信息,可以轻松进行移动学习,学生可以在上面体验空中云课堂的乐趣,老师可以在上面互动教学。智学伴教育云特点1、免费的...
初级会计职称亿题库app下载-初级会计职称亿题库app2.7.9 安卓手机版
9.7/758.3M
初级会计职称亿题库囊括了初级会计职称考试的考点大纲,提供历年真题和考前押题;微课堂短视频,几分钟就可以了解一些行业内的相关知识。初级会计职称亿题库app介绍初级...
深小i官方app下载-深小i-ai政务助手(i深圳)4.9.1 官方版
9.7/505.3M
深小i让政务办事像网购一样,接入了最新的ai系统,让用户以及企业更加快捷方便办理相关的政务服务,不管是日常生活还是企业业务办理,深小i都可以快速准确的帮你解决,...
9.5/1,654.7M
ai帮个忙app是一个非常强大的手机工具,为用户的带来了丰富的功能,几分钟就能搞定,让你获取不同的文章,采集一些关键的内容。ai帮个忙app介绍AI帮个忙是一款...
神之墓地夜白1.34无cd版下载-神之墓地夜白1.34破解版【自定攻击/防御/生命/魔法+HKE作弊+刷物品】
7.7/194.1M
神之墓地夜白1.34破解版是神之墓地的另外一个版本,最近很多玩家都在玩,给大家提供的是最新的破解版本,非常有趣的修改内容,喜欢这张图的玩家快来下载吧!神之墓地夜...
9.1/1,609.1M
霸刀传奇是一款玩法非常给力的传奇手游,力求带给玩家与众不同的传奇体验。复古的游戏画质,玩家可以全地图PK爆神装,装备自由交易,超多的玩家在线竞技,让你感受不一样...
生命life汉化版下载-生命life安卓版中文版1.0 官方版
9.9/135.1M
LIFE–人体实验—一款非常有趣且内容丰富的Android平台街机模拟器,它将以有趣的方式帮助您研究人体器官及其工作。每幅图像都有更简单易懂的形式。使用它们对各...
9.5/520.0M
幼儿的教育很重要,跃儿学堂app是一款幼儿教师学堂软件界,丰富的课程,以文字解读和视视频音频讲解的形式进行讲解,倡导幼师终身学习。 功能介绍教案、方法...
8.6/238.4M
如果你是一个音乐爱好者,相信你会对这个感兴趣,全球顶级舞曲品牌下载器。软件介绍舞曲(Dancemusic)是根据舞蹈节奏写成的器乐曲或声乐曲。由于时代、民族特点...
今日最佳ios下载-今日最佳iphone版1.1.0 苹果版
8.6/838.5M
今日最佳iphone版是一款十分有趣的手机软件,这里有用户每日更新朋友圈最新热门趣事,你可以观看最新搞笑趣事,也可以将你的趣事分享到朋友圈供别人观看。玩法与抖音...
9.6/800.1M
词汇天梯是一款英语单词记背软件,为你的词汇学习、单词量学习提供相应的辅助!每个内容都是很详细的,对于单词的词义解释、用法都说的很清楚,有利于我们理解,而且每日都...
8.2/744.4M
经典二次元q版角色卡牌游戏,以经典的卡牌收集为玩法,在游戏之中自由升级你喜欢的角色哦,游戏每一个角色属性都是不同的,用策略的方式来进行战斗,这样更加容易获得胜利...
7.9/1,332.9M
爱跑步app是一款不错的户外跑步健身软件,软件主要为爱跑步的朋友们提供专业的服务,用户可以利用这款软件寻找跑友一起约跑,更重要的是能够让你长久坚持跑下去哦。软件...
战术军队竞技场游戏下载-战术军队竞技场游戏(Army of Tactics)0.10 安卓版
9.6/1,323.2M
战术军队竞技场为玩家们带来了前所未有的体验和挑战。在这里,他们可以体验到各种不同新内容,组织自己的队伍参与更刺激更热血的对决,与来自各地的对手展开激烈的竞争。无...
8.0/212.9M
微赢交友app是一款新上线的线上交友软件,这款软件里面功能是非常完善的,你可以在这款软件里面找人进行聊天,而且这款软件里面也是有一些工作方面的人的,我们也可以在...
8.7/649.7M
家长守护是一款家长和孩子都可以使用的防沉迷平台,家长可以使用这款软件实时监控孩子玩手机的时长,现今社会孩子难免会接触到手机,为了孩子的健康成长,玩手机的时长必须...
9.4/326.4M
勇者斗恶龙9:星空的守护者是NDS上的一款角色扮演游戏,此包自带功能强大的DS模拟器,屏幕大小可以自由调整,可以选择成中文,使用金手指等等。本作是经典游戏勇者斗...
9.4/115.5M
扣钉盖截屏取图,是一款多工能的桌面图片截取工具,软件支持各种截屏方式,可以通过各种方法进行窗口或者屏幕的截取操作,使用非常的简便,软件也支持屏幕取色功能,使用者...