它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。堆叠大陆第三章免广告破解版下载-堆叠大陆永生遐想1.3 免广告版
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兼容性比较好。
1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。
2.提供基本HtmlCleanerDOM的XPath支持
3.使用XML配置文件让创建定制tag变得更加容易
4.修复多个bug以及API改进
万博官网多少 乐鱼船在哪里 九游是正规的吗 众博2017 博雅体育节展开内容
新年贺卡制作软件-MAKA新年个性祝福贺卡制作软件2.2.1 官网苹果版
Flash动画制作软件免费下载-Flash相册制作大师10.5 电脑版
手机抠图大师app下载-手机抠图大师93 最新版
魔界仙侠传苹果版下载-魔界仙侠传手游苹果版1.0.12 ios免费版
修仙群英传修改版下载-修仙群英传修改版v1.0.13 安卓版
约能人app下载-个人微技能分享交易平台(约能人app)2.0 安卓版
沐小木亲子软件下载-沐小木亲子app1.0.6官方版
烧脑最全合集游戏下载-烧脑最全合集手游1.0.1 最新版
天天背单词下载-天天背单词修改版1.3.5 安卓免费版
营养与膳食智慧树答案-智慧树营养与膳食期末考试答案doc免费版
爱素描软件下载手机版-爱素描APP官方版AC1.5.4 最新版
手机表情符号下载-手机表情软件(Bitmoji)10.77.0.3987 安卓最新版
泡泡小镇运动会安卓下载-泡泡小镇运动会小游戏1.0.6 安卓绿色版
极品芝麻官果盘版下载-极品芝麻官果盘版5.7.01042241安卓最新版
龙门美容美体-龙门美容美体(美体瘦身方法)1.0 免费版
9.0/1,825.9M
盼达电竞app是一款游戏资讯软件,在这里提供最新最全的电竞资讯和游戏优惠活动,使用盼达电竞,让您游戏轻松获胜,有兴趣的小伙伴们赶紧下载吧!盼达电竞app介绍盼达...
7.7/923.2M
这是一款模拟经营的工厂类游戏,机械工厂游戏中全部但是机械化运作,玩家要做的角色给那些机械编辑程序,让他们按照一定的模式开始工作,游戏由简单到困难,欢迎各位玩家前...
live wallpapers of lol动态壁纸-LWP of LoL(安卓手机版)5.7 汉化修改版
8.9/21.5M
livewallpapersoflol动态壁纸是一款适用于安卓手机的壁纸桌面应用,可以设置lol动态壁纸作为你的手机桌面,超级精美,喜欢的朋友可以来下载!liv...
中通快递单号查询-中通快递查询工具1.0.0.3 绿色单文件版
7.9/1,841.0M
中通快递查询工具,提供准确、实时、快速的中通快递单号查询,让属于你的快递了如指掌。不用登陆中通官网就可以直接查询你的快递物流情况,调用官方查询接口,查询结果准确...
生化危机启示录2全版本八项修改器下载-生化危机启示录2全版本八项修改器1.0 绿色最新版 【2015】
7.7/1,922.7M
生化危机启示录2全版本八项修改器其实就是最新的同名游戏《生化危机启示录2》的强悍修改工具,能够让玩家在其中获得无限血值、无需装弹、无限物品、无限BP等等八项修改...
8.6/1,069.4M
掌农app是一款农业手机商城软件,在这里可以轻松购买各种农作物产品,优质农户在这里开设店铺,您可以在这里发布采购需求,快速采购需要的商品!掌农app介绍提供专业...
8.1/1,540.6M
小优约玩是一款面向真实用户的语音交友软件,用户在应用内,可通过语音直播间聊天交友,进行互动。软件包括了首页直播间列表、动态、消息、个人中心四个主要模块。小优约玩...
8.7/1,176.3M
完美刺杀是一款很好玩的闯关战斗手游。游戏有着丰富的玩法内容,你需要控制距离把敌人消灭。多种游戏模式,强大的副本boss等你来战,快来开始你的趣味刺杀的旅程吧!完...
中医经络穴位流注下载-中医经络穴位流注(中医经络穴位图手机版(快速入门))1.0 图文详解版
7.5/1,110.7M
在现在有很多的学习中医的都是不知道怎么快速的中医经络穴位图,那么现在就给你的手机上介绍下面的这款中医经络穴位图手机版来帮助你认识!中医经络穴位图手机版主要功能经...
7.6/913.5M
梦想新大陆是腾讯最新推出的探索冒险经济手游,游戏采用唯美意境的画风设计而成,拥有回合制玩法内容,玩家将要穿越历史来到这个梦想新大陆展开全新的冒险征程!梦想新大陆...
华方医护患者版-华方医护客户端(医护到家app)1.0 手机版
8.4/713.8M
病人去医院不方便可以叫医生上门服务,华方医护客户端为患者提供上门问诊服务,医生护士上门为病人看病打针,为行动不便的病人提供方便。病人输液一般都要去医院完成,但时...
9.7/1,036.4M
罗宾汉传奇手游是一款充满创意的三项合并消除游戏,复古的游戏画风,简单操作的玩法,想要快速消除,许多合理策略应对,还上百种关卡等你挑战,这种三消类的游戏非常适合打...
斗罗大陆魂师对决官方版下载-斗罗大陆魂师对决官服2.33.4 最新版
7.5/781.4M
斗罗大陆魂师对决是一款经典小说改编的战斗冒险rpg手游。游戏有着丰富的玩法内容,为玩家展现了一个真实的斗罗大陆世界。多种游戏模式,强大的副本boss等你来战,享...
傲视苍穹0.1折下载-傲视苍穹(经典1.76版0.1折)1.0.0.15 送充值红包
8.1/1,510.0M
傲视苍穹(经典1.76版0.1折)是一款bt传奇手游,游戏中玩家可以选择不同的职业,通过定制角色的外观、装备和技能来打造独特的游戏形象。游戏打击感很好,可玩性也...
7.5/954.2M
点点浏览器是一款超级好用的手机浏览器神器。你可以在这里看网页,刷热点、头条。汇集了全网的小说、视频、漫画资源。让你轻松极速上网,而且安全无广告,每日推荐方便你浏...
Escape The Ghost Town逃离鬼镇手机版1.1.5 安卓版
9.1/481.9M
逃离鬼镇是一款非常烧脑的解密逃脱类游戏,游戏中有多个关卡等待玩家探索,玩家只能靠自己收集的物品,想办法逃出这个房间,一关接着一关,快来思考吧,你能闯到多少关呢!...
7.6/710.0M
孤煞软件库蓝奏云是一款资源非常丰富的资源平台,大家所需要的都可以在这里免费下载到,不管是各种稀缺游戏或者是稀缺应用,全部都是真实可用的,有需要的朋友们快来uzz...
网易新闻app下载苹果版-网易新闻ios客户端94.0 官方苹果版
8.8/626.0M
网易新闻客户端是网易全力打造的精品iPhone应用,具有内容快速精致、题材丰富、结构清晰、简单易用、阅读愉快、交互自然流畅等特点,因体验最流畅、新闻最快速、评论...
9.2/176.7M
这款软件是一款非常不错的跳过广告app,软件激活之后可以在你看YouTube的时候全自动的去除广告,不过使用这个软件需要搭配一些其他东西使用!跳过广告app介绍...
9.5/655.3M
精美动图壁纸app提供海量免费精美动图壁纸、头像和背景图,支持一键预览和下载,实时更新资源帮助用户轻松打造个性化手机桌面。精美动图壁纸app功能介绍提供海量分类...
9.6/106.6M
小半app是一款最新出炉的网络交友平台软件,提供各种聊天功能,包括私信,一对一视频,附近的人等等,你可以自由进行筛选,找到适合你的另一半!软件介绍一款充满青春活...
电脑键盘模拟电子琴-HAPPYEO模拟电子琴3.12 中文最新版
8.5/1,859.5M
HappyEO是一个用电脑的声卡和键盘来模拟电子琴的程序。支持两个独立的键盘,可以同时用左右手分别演奏。可分别设置不同的音色、音区和效果。软件界面逼真,操作方便...
屏保软件-天气画面屏幕保护(YoWindow)4.0.33 多语中文版
8.2/232.0M
YoWindow算是一款知名的天气屏保软件。能知天气情况又能祈祷屏保的作用,实在是很不错。有需要的可以来东坡下载使用!YoWindow简介Yowindow是一款...
最后一卷胶片安卓下载-最后一卷胶片app安卓版2.12 安卓版
9.8/1,137.7M
最后一卷胶片这是一卷不用放在冰箱,也不会过期的胶片。真实地还原了Kodak、Fuji、Agfa等曾经多款别具一格的胶片的色彩。我们目前已上架以下胶片,同时会不定...
减肥进度追踪app-减肥饮食追踪app(Undiet Tracker)1.0.1 个人纯净版
9.7/1,901.6M
减肥最主要的就是管住嘴,这是一个根据你身体情况给你安排一日三餐的科学减肥工具。最强的健身减肥饮食规律1、睡前3小时严禁进食!晚上吃进去的糖分会全部转化为脂肪,滞...