1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。行星吞噬进化免广告版下载-行星吞噬进化免广告版1.0.1 安卓版
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语言Html文档解析器,它能重新整理HTML文档的每个元素并生成结构良好(Well-Formed)的HTML文档。默认它遵循的规则是类似于大部份web浏览器为创文档对象模型所使用的规则,户可以提供自定义tag和规则组来进行过滤和匹配。
它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。
展开内容
黑芽动态壁纸高清版下载-wallpaper engine黑芽动态壁纸1080P 高清版
超级兔子2011V11.0.16.0 绿色版 系统维护的权威
数控编程软件-NC程序编辑器2.0.0.4 绿色免费版
极武尊1.6地图下载-极武尊1.6正式版附攻略和隐藏英雄密码
反恐战场(Counter terrorist battleground)2.7 安卓版
鼠标键盘录制器-Dragon键盘鼠标模拟器1.1 绿色免费版
飞鼠键盘钢琴2.0.6 免费版
远程安装系统官方下载-远程安装系统2.1免费版
专业的标志设计软件(So think Logo Maker)v3.5正式版
qq对战平台挤房器下载-QQ对战平台挤房器1.0 绿色版
ppt伴侣(制作精美ppt)1.0.0.4 官方免费版
阿里巴巴会员采集软件10.9.3.6 官方最新版
超稳定版Protel99se加自动汉化包全集 EDA设计软件
ParkControl下载-ParkControl CPU内核启停和频率调整工具1.3.1.8 免费版
动漫高清手机壁纸-日系动漫高清手机壁纸精选通用版
swf资源提取器-swf文件提取器(SWF Extractor)2.4 官网最新版
僵尸散步死亡逃生游戏下载-Zombie Walking: Dead Escape(僵尸散步死亡逃生手游)6.1.0 最新版
酷狗音乐盒2012纯净版下载-酷狗音乐2013v7535 最新版
mhxx3DS模拟器下载-mhxx3DS模拟器1.0 绿色版
清明节的由来ppt下载-清明节的由来介绍ppt(共20页)精美版免费下载
厉害了我的国电影观后感500字-厉害了我的国纪录片观后感作文2018精选版
凯立德2014端口速率配置修改工具下载-凯立德2014端口速率配置修改工具1.0 绿色版
狗叫翻译器软件下载-狗叫翻译器app5.6.5 安卓最新版
GB∕T 12960-2019 水泥组分的定量测定PDF免费版
2017智慧树统计方法与资料分析答案下载-2017智慧树统计方法与资料分析期末考试答案最新完整版
装饰常用的施工app管理软件-居然装饰施工管理软件APP3.1.2无广告免费版
9.0/789.9M
居然装饰施工管理软件是居然之家打造的一款为业主、装修队、设计师之间交流的平台,只要你装修房子选择这款软件,你就能感受到一条龙式的服务,无论是选材到设计稿再到装修...
Inventor Professional 2018下载-Autodesk Inventor Professional 2018官方版
8.0/86.5M
AutodeskInventorProfessional2018是一款专业的机械设计cad软件,是autodesk出品的一款机械行业cad软件,今天小编为你们带...
8.8/428.9M
壹站空间app是一款非常好用的家居购物软件,你可以买到你想要家居,或者是招标定制你的家居。全新升级的技术都在这里,可以网上查看家具,利用全新升级的vr技术,网上...
查看
9.2/262.9M
今天是24节气大雪,许多玩家都想要自己的微信朋友圈拥有非常好看的大雪图片,小编为你收集整理了一些24节气大雪高清图片,非常适合当头像,发动态,需要的朋友拿去发朋...
8.0/1,239.0M
武汉租房合同模板是专为房东与房客打造的合同文件,完整规范的合同内容签订即可生效,是为房东与乘客双方之间最有力的法律效应!中介租房注意的事项 1、看房时...
8.3/998.1M
这是一个嵌入管理器软件,可以筛选一些禁用状态,可以保护你的硬盘安全,保护数据的安全等等功能,比较简单的一个小型工具,绿色免安装!UWF管理器使用说明UWF管理器...
SketchBook2020下载-Autodesk SketchBook Pro2020免费版8.6.5 官方版【附注册机】
9.4/1,714.2M
由Autodesk官方打造的一款功能很强大的素描工具,AutodeskSketchBookPro2020免费版精简版本,软件去掉了很多复杂的安装步骤,操作很简单...
8.4/1,446.1M
股票题材分析监控软件是一款是一个很有创意的软件,软件可以对你的股票进行监控,只要你认真体验其中的每一种功能,你会感受到很多以前梦寐以求但无法实现的功能,让你站在...
7.9/1,629.6M
适合情侣玩的游戏现在有多少了?特别是初恋不久的朋友想玩一款互动的手游,而且又是不耽误自己的工作时间的话,现在就可以试试下面的这款喜欢和你在一起情侣版!情侣玩的甜...
格式工厂win10版64位下载-格式工厂win10最新版4.1.0.0官方中文版
8.0/1,456.1M
格式工厂win10最新版是一款非常经典的软件,给大家提供win10版本的下载,64位,可以一键转换各种格式,文件大小多少都可以改,需要的快来下载吧!格式工厂介绍...
9.0/1,744.8M
文明6迭起兴衰更多自然奇观生成mod是一款可以美化文明6迭起兴衰游戏的mod,这款mod可以让你在玩这款游戏的时候直接的拥有更多的奇观景象,让游戏更加的好玩!文...
8.6/771.2M
三国志游戏中,武将都有能力值,那么武将的战斗力需要玩家自己把握,东坡小编在这里为大家带来三国志13新武将战斗力计算器,可以快速计算所有武将的战斗力数据,让你快人...
电脑磁盘碎片整理-磁盘整理工具(Wise Disk Cleaner)10.2.6.777 免费中文版
8.4/650.7M
磁盘整理工具(WiseDiskCleaner)是国外的一款非常好用的系统清理工具,快速简便的垃圾空间清理、磁盘整理的工具。使用的功能软件让你在整理磁盘的同时不再...
8.2/675.3M
半世界之旅测试版是上海掌梦官方开发的一款乙女性恋爱养成游戏,这将玩家将不仅仅是与人恋爱,琮将与魔族、兽族、妖族的男子展开甜蜜之旅,没错是一款玩法跟恋与制作人蛮相...
9.6/794.5M
每个父母都希望给自己的孩子取个又好听又有意义的名字,但这样的名字不是每个父母都会取,去问别人又很尴尬,不问又觉得关于孩子一辈子的事,不能马虎,为此很是着急!那么...
Reflection铃声下载-iPhone X专铃声Reflection下载完整版
9.8/558.8M
周围已经有朋友用上iPhoneX了,而苹果官方设置了iPhoneX的专属手机铃声,Reflection反射,今天小编这里分享iPhoneX专铃声Reflecti...
ps elements 2021破解版-Adobe Photoshop Elements2021破解版19.0直装版
7.9/1,362.5M
PhotoshopElements2021是一款定位在数码摄影领域的全新的图像处理软件,也是Photoshop2021的简化版。该软件包括了专业版的大多数特性,...
9.3/1,489.8M
媒体下载大师CoCsoftStreamDown,一个非常出色的流媒体文件下载工具.除HTTP,FTP外,还支持RTSP,MMS,MMSU,MMST协议!专为下载...
9.9/1,205.1M
蓝色部落app是一个好用的学习口语的软件,具有AI对话功能,用ai技术来提升你的口语能力,针对不同水平和需求的用户,提供量身定制的教学方案。蓝色部落app介绍开...
8.3/1,837.7M
八条腿工具箱微信助手是一款多功能微信聊天辅助工具,轻松帮助用户实现多开、加人、管理微信群等功能,支持快捷白、黑名单设置,省力又省心,欢迎下载!专为电脑版微信打造...
8.5/1,744.1M
话术工具吾爱专业针对用户聊天日常而打造的一款全新聊天话术app,不管是什么场景、人物身份、地点等等,在这里都能一键为你找到合适的语句话术,再也不用让女神对你的聊...
终结者2审判日PC版-终结者2审判日电脑版1.0.3 官方最新版
8.3/1,553.8M
终结者2审判日是一款由网易最新出的游戏,该游戏是可以在电脑上运行的!终结者2审判日他是一款MOOD射击类游戏,而且完美的支持多人实时对战,有着大逃杀玩法!终结者...
8.6/1,220.4M
趣美壁纸大全是一款专注于手机个性化装饰的实用软件,为用户提供丰富多样的壁纸资源。该应用通过精选高清图片和动态效果,帮助用户打造独特的手机界面。无论是静态壁纸还是...
9.9/680.5M
小目标打卡app是一款可以制定小目标的手机软件,每天打卡,完成你的目标,让你的计划成为习惯,提高你的生活和工作效率!软件介绍通过建立科学有效的目标计划,不断提醒...