1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。酷桌面软件下载-酷桌面助手1.0 官方正式版
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。
HtmlCleaner是一个免费开源的适用范围广的Java语言Html文档解析器,它能重新整理HTML文档的每个元素并生成结构良好(Well-Formed)的HTML文档。默认它遵循的规则是类似于大部份web浏览器为创文档对象模型所使用的规则,户可以提供自定义tag和规则组来进行过滤和匹配。
917bet app体育彩票 地方体育台直播 十一选五开奖黑 博鱼电竞手机版展开内容
宜搜搜索(手机搜索工具)6.1.1 最新版
幻熊云仓app1.2.2 安卓最新版
快追免费小说软件下载-快追免费小说app3.80 最新手机版
微信迪士尼城堡烟花背景图-微信8.0烟花背景图片大全动态视频版
丰行万家下载-丰行万家app0.1.8 安卓最新版
数字迷宫(Digits Maze)1.0.5 安卓版
M3U8下载器-虐心iM3U8下载器2018 最新版
NBA Playgrounds官方版ios下载-NBA Playgrounds手游2.1.40 苹果版
辰龙捕鱼官方下载-辰龙捕鱼官方正版5.10.10 最新版
led显示屏编辑-HD2013显示屏编辑软件4.03 绿色版
神马日历(天气日历软件)1.0.0.1 绿色免费版
暗网版迷你世界下载-迷你世界暗网版(ZM:Mini Dark net)v0.10.8 ZM极域
99j2011图集免费下载-99J201-1平屋面建筑构造图集pdf格式免费版
企业所得税年度申报系统-企业所得税年度申报软件v3.9 官方版
洁视家可视挖耳勺app下载-洁世家健康智能可视挖耳勺app6.7 官方版
手持弹幕led显示屏下载-LED手持弹幕显示器app1.0.0 免费版
9.7/300.3M
LED手持弹幕显示器app是一款非常实用的应援手指弹幕软件,能够适用于多种场合,app解锁全部功能永久会员,所有的功能都可以免费使用,需要的小伙伴快来下载了解吧...
小火车查尔斯同人版下载-小火车查尔斯同人版(Choo Choo Charles)2.0 最新版
9.4/400.0M
小火车查尔斯同人版2.0全新升级,添加了全新火车样式以及新的武器,面对更多的怪物,通过获得足够的力量、火力和技能去对抗,一定不能被抓到,各种危险朝你走来,开启冒...
New York Craft 安卓版下载-纽约工艺New York Craft正式版1.2 最新版
8.8/882.8M
纽约工艺NewYorkCraft正式版是一款模拟建筑类手机游戏,游戏中玩家可以开发新的建筑物,建筑各种高楼大厦、游乐园和参观区。玩家可以按照自己喜欢的风格建造城...
饭团BIGBANGapp下载-饭团BIGBANG3.4.6安卓最新版【明星资讯】
8.2/1,597.4M
饭团BIGBANG是一款明星资讯阅读app,有想要的BIGBANG任何东西,视频、图片、行程,让你对它们了如指掌,追星族必备神器。饭团BIGBANG点评饭团BI...
神界Ⅳ毁灭之神5.3下载-神界Ⅳ毁灭之神5.3正式版【定制隐藏英雄密码】
8.9/1,849.9M
神界Ⅳ毁灭之神地图是魔兽防守地图,神界Ⅳ毁灭之神5.3正式版是加强骸骨宝物1亿属性,修改了技能不需要转生的问题,有喜欢这款地图的玩家可以免费下载。神界Ⅳ毁灭之神...
芗里芗亲最新安卓版本下载-芗里芗亲app官方v2.0.3 安卓官方版
9.7/431.1M
芗里芗亲app是漳州官方部门所推出的手机客户端,用户可以使用芗里芗亲app在线的查看众多的生活服务信息,也可以使用芗里芗亲app在线的网上办理事项,感兴趣的可以...
热血忍者2024最新版下载-热血忍者游戏手机版1.1 最新版
9.9/190.0M
热血忍者是以忍者主题的、具有热血风格的动作游戏,结合了忍者文化的元素,如潜行、暗杀、使用各种忍具等,并且具有流畅的战斗系统和丰富的关卡设计。 这款游戏...
9.5/701.2M
仙梦奇缘折扣版是一款非常好玩的梦幻修仙游戏,构建恢弘仙侠世界,全新的游戏玩法,个性养成系统,在冒险探索的过程历练自己的角色,超多免费福利助你轻松问鼎三界巅峰,感...
9.0/163.9M
是国内首家以宠物为拍摄主体的分享平台,在宠音短视频app上,用户可以自由拍摄自己的宠物上热门,还集合超多的滤镜、特效和背景音乐供你选择,让你的宠物变网红!宠音短...
8.7/571.8M
实况足球2018是一款大型的足球模拟游戏,每场比赛都需要计分的,小编推荐实况足球2018贝因体育记分牌美化补丁,紫色和白色的配色,看起来更好看!实况足球2018...
AView app下载安装-AView摄像头appv1.5.9 安卓版
9.4/292.5M
AView是一个非常专业的摄像头控制软件,可以用来绑定您的摄像头产品,实现远程控制功能,随时查看安装在家里的摄像头拍摄的各种画面,非常实用,欢迎来下载!AVie...
9.4/1,253.1M
众神派对手游是一款以潮酷为核心的都市神话题材3D卡牌游戏。这款游戏融合了街头元素与时尚感,以闪烁的霓虹灯和穿梭的地铁等都市元素为背景,为玩家打造出一个充满生动气...
危险的家伙们国际服下载-危险的家伙们游戏国际版1.28.3 免费版
7.5/136.6M
女性向末日惊悚恋爱模拟养成游戏【危险的家伙们】(DangerousFellows:OtomeDating),这里面的选择是很考验人性的,里面的剧情很考验人性,任...
9.7/1,994.9M
涂鸦对决是一款非常趣味好玩的休闲冒险游戏多种关卡挑战模式你可以不断的进行各种感受体验,更多精彩的对决等你来参与,游戏非常的自由,玩家在游戏中闯过滚卡就可以解锁更...
保龄球俱乐部安卓下载-保龄球俱乐部游戏(Bowling Club)1.1.13 手机版
9.2/915.1M
BowlingClub是最激动人心的免费3D街机保龄球运动游戏,可以在全球任何地方在线玩!与职业保龄球协会(PBA)中最优秀的保龄球手一起在玩家对玩家(PVP)...
9.4/804.2M
小巨星j是一款免费的唱歌评分软件,PK巨星,挑战麦克疯。小巨星可以精确地检测演唱者的音高、节奏和音准,从而给出科学的演唱评判,可以称着是单机版巨星。实时的字幕滚...
7.5/1,854.3M
很多人想要练习英语听力大多会选择听英语新闻,可能趣味性没有那么大,这款听电影app可以边听电影边学英语,这样不仅能了解电影的剧情还可以更好的在情景化中学习英语。...
fuubo微博客户端-Fuubo(新浪微博客户端)3.3.4 官网版
8.7/351.3M
全新的微博客户端Fuubo来了,除了原本备受好评的离线发送微博、定时发送微博等功能,新加入了微博浏览功能,华丽变身为一款功能完整的微博客户端。界面依旧大气简约,...
警察驾驶模拟器22022下载-警察驾驶模拟22022(Police Sim 2022)v1.9.91 官方正版
8.2/1,133.5M
警察驾驶模拟22022是一款画质超高的手机模拟驾驶手游,在游戏中玩家驾驶汽车在路上狂飙,势必今天抓住逃犯,游戏驾驶过程很逼真,感兴趣的小伙伴快来东坡下载吧!警察...
8.8/1,395.6M
理财现在手机上是有各种各样的宝宝都是可以帮助你进行理财的,但是你想知道哪一个理财的软件要好些以及安全些,最好的是收益要高的话,就赶快来试试京东金融平台!京东金融...
8.5/325.8M
新浪微盘ios版是由新浪官方出品的一款微盘客户端软件,旨在打造一款最贴近用户的云存储产品,相信有很多人都在用,为大家带来苹果版本,有需要的用户下载吧!软件介绍“...
8.5/310.2M
Q移动QQ空间清理大师是一款可批量删除QQ空间说说,批量删除QQ空间日志,批量删除QQ空间分享,批量删除QQ空间留言,批量删除QQ空间动态,免费QQ空间清理大师...
9.6/1,569.5M
公共关系学是指以公共关系的客观现象和规律作为研究对象的综合性学科,研究和工资如何沟通、传播的行为、规律和方法。今天东坡小编给大家带来公共关系学复习资料。研究对象...
起点读书app下载安装-起点读书app7.9.428 安卓最新版
8.1/1,649.6M
今天小编给你推荐一款很不错的读书软件,起点读书,国内最大最出名的小说文学网站,小编也是起点忠实的读者,个人感觉手机起点阅读器还是很不错的,有兴趣的朋友可以下载下...
车来了苹果手机版下载-车来了手机版6.10.2 IOS免费版
8.0/849.9M
车来了是由元光科技开发的一款查询公交车实时位置的手机软件,不仅能提供公交车的到站距离、预计到站时间,还能显示整条公交线路的通行状况,是不是觉得这款app特别实用...