它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。播放器定时软件-定时播放器编程软件(适用于MP3-II机型)
写一个测试用的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改进
HtmlCleaner是一个免费开源的适用范围广的Java语言Html文档解析器,它能重新整理HTML文档的每个元素并生成结构良好(Well-Formed)的HTML文档。默认它遵循的规则是类似于大部份web浏览器为创文档对象模型所使用的规则,户可以提供自定义tag和规则组来进行过滤和匹配。
新宝pc蛋蛋 上下分的牛牛群 体育足球投注网 法雅体育皂君庙 hg体育202展开内容
罐头清单app下载安装-罐头清单(Cando)1.38.3 手机版
美腿瘦腿app-美腿瘦腿(减肥app)2.5.1 安卓版
奇兵小队测试版下载-奇兵小队内购版1.0.6 体验服
铜陵住房公积金iOS下载-铜陵住房公积金官网1.1 官方版
校园卫生主题班会教案PPt下载-校园卫生主题班会ppt模板免费下载
硬盘分区对齐工具(Paragon Alignment Tool)10.0 中文安装版
小人冒险闯关app-方块兄弟(方块小人冒险app)v1.8.0 免费中文版
RUI极速桌面(手机桌面软件下载)0.9.5 官网最新版
2017新年暴走表情包下载-2017新年暴走表情包最新完整版
普洱智安云通app下载-普洱智安云通手机版1.1.1 安卓版
三国将无双手游下载-三国将无双手游3.0.0 安卓版
优课在线app-小渔优课APP1.0.1安卓专业版
愣子跑酷免广告下载-愣子跑酷无广告版1.3 最新版
明日尽头游戏下载-EndOfTomorrow明日尽头手游1.0 安卓版
定期报告系统app下载最新版-定期报告系统低保app4.3.6 最新版
查看
7.6/1,880.4M
分享街app是一款分享购物软件,不仅仅用户可以获得非常优惠的购物体验,还可以分享给你的好友,她们也能获得优惠的购物体验哦,主打分享式的购物,有好货就来这里分享吧...
9.1/278.4M
JoyToKey是通过手柄或操纵杆来模拟键盘、鼠标的软件,它可以将手柄输入模拟成键、鼠输入传到系统中,使用很简单就是在按钮下面一列点击再按下手柄上你想设置的按键...
7.8/1,114.6M
荣耀永恒召唤手游是一款非常好玩的玄幻冒险类型游戏,支持离线挂机等玩法,快速升级打怪,战力爆表,支持结婚系统,还有各种帮战,全城pk等等,非常刺激!类似永恒纪元的...
9.4/1,561.2M
亰熙出租车从业资格证考试题练习系统,软件采用最新出租汽车驾驶员从业资格考试全国公共科目题库,绝对真题,包你通过。软件为单机版,无需联网,无使用时间限制。特别适合...
cfa随身学app下载安装-cfa随身学题库1.0.0 免费版
8.8/765.3M
cfa随身学题库专为金融师考试打造的线上学习题库软件,涵盖了历年经典考试重点题型供用户测试训练,优质的教学模式十分高效,轻轻松松让你的学习成绩提升,如果你也有对...
8.0/252.0M
修店宝服务端,修店宝app官方客户端的服务端,方便店主发布自己的维修需求,专业的店铺维修技术人员将上门为你服务!修店宝app功能介绍修店宝app是上海榕汉(商贸...
三星4300清零软件(三星4300打印机清零)7合1 中文绿色版
7.5/832.1M
这是一个电脑城维护打印机的专用工具,可以支持1640,1641,2240,2241,2245,4200,4300。清零一般有两种方法:手动清零与软件清零。手动清...
billboard公告牌下载-Billboard Player公告牌2.1.1 最新版
8.6/1,366.1M
billboard公告牌为音乐爱好者们带来了全球的音乐东岱和内容,这款软件不仅仅是音乐播放其,还能查询全球音乐排行榜,这个榜单是具有权威性的;billboard...
8.6/1,591.6M
一款更快的汽车服务软件。让汽车的服务价格更便宜!在这个平台里,为车主提供汽车全套服务,你什么都不用担心。喜欢的下载试试吧。车宝宝软件(汽车生活服务软件)特色车险...
车辆违章查询系统下载-重庆市车辆违章批量查询系统1.40 官网免费版
9.7/137.1M
重庆市车辆违章批量查询系统是一款专业、实用、简洁、高效的车辆违章查询软件,其最大的特点在于实现了多个车辆的批量、实时查询,速度快,数据准,需要的朋友快来下载使用...
8.0/1,568.8M
泡泡龙是一款非常好玩的小游戏,简单容易上手,休闲又益智。精美的画面,动听的音效,都能够给人带来欢快,愉悦的感觉,闲暇之余玩玩这款游戏也不错。泡泡龙玩法介绍1、普...
7.8/671.7M
NBA2K18游戏CE修改器可以修改游戏中的模式、传球率、扣篮的频率、精准传球机率等等功能,使用简单,小编这里分享的是NBA2K18游戏CE补丁,需要与ce软件...
暴走毒液正版下载入口-暴走毒液游戏(Symbiote Shooting Puzzle)1.17.0 手机版
8.0/1,347.8M
暴走毒液小游戏(SymbioteShootingPuzzle)是一款借鉴了知名形象《毒液》的动作冒险小游戏,玩家操控毒液打败各种各样的敌人,你可以借助自己的技能...
8.1/1,514.9M
细胞连接是一款数字组合的消除类型手游,通过移动数字来实现重组,不断变化,游戏可玩性非常高,欢迎来下载体验!细胞连接手游介绍细胞连接(CellConnect)结合...
小梵高美术app下载-小梵高美术(小梵高艺术app)1.5.3 最新版
9.4/883.8M
小梵高美术(www.huizhiqiyuan.com),专为孩子们打造的艺术乐园,从0开始培养孩子的兴趣爱好,从绘画到雕塑,这里全部都有,选择孩子自己喜欢的课程...
7.9/117.8M
你想要去青海旅游吗,小编我推荐一款青海自驾游手机版,这款软件上有青海的各种资讯,各种功能,酒店的住宿,青海的美食,青海的特产等等。青海自驾游手机版功能网站以便捷...
7.9/422.1M
WM版道路分析掌测是一款道路分析掌测。功能强大,使用方便。体积小,智能化程度高,计算快速准确。有需要的可以来东坡下载使用!WM版道路分析掌测说明WM版道路分析掌...
JPEG LOCKER(图片文件加密软件)v1.0.0免费版
7.6/298.9M
JPEGLOCKER图片文件加密软件是一款很好用的加密工具,用户可以进行意见加密功能,软件功能强大,操作简单,非常的使用!软件特色1.用途小软件大作为,照片隐私...
查看
8.9/913.4M
大侠神剑是一款休闲的手机游戏,可以选择不同的武器进行战斗,非常的精彩,使用神剑袭击敌人,游戏中有着大量的关卡不一样的玩法,解锁众多的神剑实现自己的剑侠之路,适合...
湘约出行app下载-湘约出行(约租管家)1.4 乘客版【长沙汽车西站app】
9.4/994.0M
湘约出行(约租管家)是一个长沙汽车西站推出的省内首款官方汽车票App,市民朋友可以通过app在线购票,并推出预约租车等功能服务,欢迎来下载使用!湘约出行app介...
7.9/702.9M
我赚钱特牛游戏是款模拟经营类的赚钱小游戏,不断的发展自己的行业进行扩大,轻松的点点手指就能立马的赚到钱,在游戏中体验当首富的快乐。我赚钱特牛游戏介绍1、在你投资...
悬浮按钮软件下载安装手机版-悬浮按钮(Floatingbutton)4.2 手机版
7.7/1,981.5M
悬浮按钮支持免费自定义快捷方式列表,通过开启无障碍服务权限解决生物认证解锁限制,适用场景广泛,显著提升操作效率。悬浮按钮app功能介绍悬浮按钮采用极简设计,全程...
新纪元传奇起航2.65地图下载-新纪元传奇起航2.65正式版【隐藏英雄密码+攻略】
7.9/631.6M
新纪元传奇起航2.65正式版是一款非常不错的ORPG地图,地图支持1-6人同时在线游戏,最新版本修改模糊搜索、修改页数查询。修复一些已知bug,喜欢的朋友们可点...