它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。足球赛事
写一个测试用的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和规则组来进行过滤和匹配。
1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。
2.提供基本HtmlCleanerDOM的XPath支持
3.使用XML配置文件让创建定制tag变得更加容易
4.修复多个bug以及API改进
亚博地董事长 众博 跨境赌博 足球体育比赛 vr 体育游戏 时凯 法律专业展开内容
存储子系统直接连接服务器(称为直连存储或DAS)免费下载
喜马拉雅专辑批量下载-喜马拉雅专辑下载工具1.0 免费版
真假通(二维码扫描工具)3.1.0安卓版
AutoFormat(MMC/CF/SD内存卡格式化工具)4.0 绿色免费版
火车模拟建造手游1.0.1 中文版
过山车大亨经典版1.10.11最新苹果版
锦鲤电竞下载-锦鲤电竞app2.2.201125 安卓版
3D蜘蛛侠6.1 安卓最新版
爱彬州下载-爱彬州app1.2.4 安卓版
新概念英语第一册学习软件下载-新概念英语第一册学习软件2.0 ios苹果版
地城邂逅收手游ios下载-地城邂逅苹果版1.0.41 官方iPhone版
苍蓝断章挂机版下载-苍蓝断章挂机游戏1.1.5 安卓版
仙迹赘婿降妖记手游下载-仙迹赘婿降妖记游戏1.0 最新版
智剪AI软件下载-智剪AI软件1.0.6 安卓版
万众一心战疫情手抄报图片下载-万众一心抗击新冠肺炎手抄报卡通简单版
僵尸榨汁机ios下载-僵尸榨汁机苹果版5.2.0 中文免费版
9.2/1,009.8M
僵尸榨汁机苹果版再次的更新以及发布了,全新的玩法以及不同的体验都是现在很多的玩家非常的期待的,本站就正式的为你提供僵尸榨汁机苹果版免费下载!僵尸榨汁机苹果版游戏...
8.3/635.2M
这款游戏是一款方块大作战游戏,游戏中你可以选择各种不同的角色进行战斗,通过技巧获得胜利,超爽快的人物技能让游戏十分好玩!迷战大冒险特点1、丰富多样的游戏关卡,带...
小郭系统工具箱破解版-小郭系统工具箱去广告绿色版1.0 最新版
8.7/587.3M
小郭系统工具箱去广告绿色版是一款非常好用的系统多功能工具箱,让你每天都能开开心心的对系统有个认识,让你可以快速的发展,需要的下载吧。小郭工具箱qq去广告绿色版介...
9.8/1,558.2M
多媒体编辑程序,具有分割、合并、编辑、转换和刻录等多种功能。支持音频,视频和CD/DVD,可以转换,编辑,合并和分割几乎所有格式的视频文件,从视频文...
10.0/1,857.6M
血氧仪app手机安卓版通过蓝牙血氧仪来对人体进行血压血氧数据检测,守护家人的身体健康,操作简单,详细的数据将会直接传递到手机上显示出来,非常的实用,有需要的朋友...
爱山东爱淄博app官方下载-爱山东爱淄博app1.2.3 最新版
8.4/1,950.0M
爱山东·爱淄博,淄博服务方便本地生活,整合了丰富的版本,获取最新的资讯,线上查询社保,水电费缴纳等,不用出门办理大小事情。爱山东爱淄博app介绍“爱山东·爱淄博...
9.4/962.1M
迪哒互动app是一款非常好用的学习类软件,你可以通过迪哒互动app让家长与学校更加可以近距离交流,并且迪哒互动使用起来非常的方便,有着众多的学习资料!迪哒互动a...
9.7/818.4M
超级可爱的一款休闲不烧脑的合成猫咪养猫赚钱的游戏,我的发财猫红包版中有丰富的玩法,玩家完成任务就可以获得超多的奖励,天天抽奖转转盘,只要满一元就可以提现,任务多...
全网VIP视频解析工具-全网VIP免费观看软件1.0 绿色免费版
9.6/7.6M
全网VIP免费观看软件是一款绿色免费的全网vip视频解析软件,可以不用花钱买会员看全网所有vip视频,有5个通道供选择,如果一个通道不行可以选另外一个。全网VI...
9.0/927.4M
状元之旅app是一个用来学习成语知识的手机软件,拥有丰富的学习资源和游戏设置,使得学习和娱乐完美结合。用户不仅可以体验到成语的魅力,同时也可以提高自己的成语水平...
徕卡DNA03数据传输软件-徕卡全站仪数据传输1.0 绿色版
9.2/316.8M
徕卡全站仪数据传输是一款徕卡新一代的数字水准仪。如果你要将仪器数据传到电脑就要用这款软件。有需要的可以来东坡下载使用!徕卡全站仪数据传输说明DNA03/10是徕...
9.4/1,736.6M
这是一个走路赚钱的平台,通过这个app你可以领取额外的红包奖励,人人都可以快速走路来赚钱,非常靠谱的用户,锻炼身体还能赚钱。软件简介1、一个手机端的快速赚钱的平...
8.9/1,161.9M
龙之堡手游是一款非常好玩的休闲益智类游戏,玩家在游戏中需要训练和孵化不同类型的恐龙来与自己并肩作战,也可以与好友联盟或者加入家族,让土豪玩家为你发放宝箱,恐龙的...
8.6/708.1M
驾考学车考驾照app是一款非常实用的驾照考试题目练习软件,用户下载这款软件就能够在上面进行优质的题目练习服务,app上涵盖了所有民用车辆考试学习的练习题目,用户...
8.5/1,176.3M
超速WIFI钥匙是一款WiFi热点查找应用,基于云端数据库热点获取密码实现上网。拥有国内最大的WiFi热点库,能找到身边免费、开放的WiFi热点,随时随地享受免...
8.1/635.2M
爱飞客是一款发展航天热爱者的软件,包含通航会展、飞行表演、品牌经营、创意产品,传播航空文化、催生航空梦想,以前都是在地上跑,现在我们都可以在天上飞,快来体验一把...
9.1/1,021.9M
v5游戏浏览器是一款真正为网页游戏而设计的专用加速浏览器,完全绿色免费,安全无毒,内置上万种网页游戏,让你找游戏不用愁。全新首创的加速功能带给您极速的游戏体验,...
8.1/1,647.7M
怒砍一刀是一款传奇手游,游戏保留了传奇经典玩法,游戏中可以和兄弟一起进行攻沙,游戏可以自己建立属于自己的帮派,重回玛雅大陆,热血青春等你来战,攻占沙城。怒砍一刀...
8.1/1,003.4M
轻松的走路赚钱app,通过走路可以轻松获得收益哦,软件是走路赚钱app,以掌上走路计步为亮点,可以通过走路获得金币,使用这些金币轻松领取很多红包爽快的赚钱哦,走...
采集哈尔滨核酸app安卓版下载-采集哈尔滨核酸检测软件1.0.9.6.0 最新版
8.2/604.6M
很多采集黑龙江核酸检测的软件不支持哈尔滨地区,这个是专为哈尔滨地区打造的核酸检测软件,主要服务医护人员,提供扫码入库,信息采集,样本编号等多项功能,提升采集效率...
复仇联盟游戏下载-复仇联盟塔防游戏3.0.0.21042618 最新安卓版
9.5/451.4M
末日废土风格的td塔防类游戏,有很多的丧尸袭来,复仇联盟全靠智商策略获胜,开局一个小兵,送十连抽,如何守住丧尸进攻?复仇联盟塔防游戏特点经典塔防战斗,百变关卡,...
培训签到表模板-员工培训签到表空白模板xls格式标准电子打印版
9.2/477.2M
在公司里面,为了更好地发挥员工的价值,提高业务能力,经常会员工一些培训的机会,或者在入职的时候,要学习公司的一些企业文化,要填写签到表。这份标准的员工培训签到表...
8.4/1,460.8M
服务管理小工具就是款非常小巧的服务管理器。你们可以在上面按条件筛选出自己需要的服务,之后还能够批量开启关闭相关的服务。绝对需要的就可以进行下载!服务管理小工具如...
苏宁易购app客户端下载-苏宁易购手机客户端iPhone版9.5.43官网苹果客户端
7.8/1,787.5M
苏宁易购手机客户端iPhone版是一款专为iPhone用户打造的手机购物软件,寻求便捷快速高效的购物体验,100%正品保证,售后无忧。直销彩电、空调、冰箱、洗衣...
9.3/418.2M
音宝约玩app超好玩的同城语音聊天交友软件。约会找对象,优质的都在音宝,在这里既能够处对象的同时还能一起吃鸡打豆豆哟。音宝约玩app介绍音宝约玩,让你遇见有趣的...