它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。圈圈元宇宙app下载-圈圈元宇宙1.0.0 安卓版
写一个测试用的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和规则组来进行过滤和匹配。
直播体彩刮刮乐 kok官方体育 无锡威博体育 亿博彩票靠谱 蓝冠娱乐网址展开内容
枕头发射器游戏下载-枕头发射器(Pillow Launcher)4 安卓版
ae2017中文版-Adobe After Effects CC 2017完整版14.0.0.207 官方中文版
,天涯论坛营销推广软件下载-天涯全自动营销软件3.6 免费版
月光宝盒max电视版最新版下载-月光宝盒max最新版3.10 盒子版
粉色爱维宝贝家长版app下载-爱维宝贝家长版6.4.77官方最新版
怀仁云app下载-怀仁云app1.0.3安卓版
圣魔之血6.5天使的哭泣下载-圣魔之血6.5天使的哭泣正式版【附隐藏英雄密码+攻略】
万能音频播放器(MoreAmp)0.1.29 免费安装版
幻想英雄传说变态版下载-幻想英雄传说bt版1.6.0 安卓最新版
小星医生医生版1.0.37安卓版
猎梦宿舍2游戏下载免广告-猎梦宿舍21.5.3 安卓版
反恐精英:起源绿色中文版
大华瀚睿电脑版下载-大华瀚睿客户端1.0 官方pc版
女巫糖果奇遇(Witch Candy)1.1.0 安卓版
靠谱云游戏平台下载-靠谱云游戏app1.2.5 安卓最新版
天域苍穹私服下载-天域苍穹满v版1.0 安卓版
证件水印助手下载-证件水印助手app2.1.3 安卓版
怪物龙模拟器游戏(Monster Dragon Simulator)1.3.0 安卓版
Trolls Quest Mission游戏下载-Trolls(巨魔表情任务)1.0.1 安卓版
淘宝直播多开软件下载-淘播多开神器1.3最新版
奇葩工具箱v4.3.5 绿色版
remove.bg抠图手机版下载-remove.bg抠图安卓版1.4.5 免费中文版
Anti Stress Color Shuffler下载-多功能缓解疲劳工具1.0 官方版
迅雷(Thunder)7官方最新版-迅雷(Thunder)7.2.7.3472Preview 中文安装会员优先体验版
电选优购app1.0.1 安卓最新版
约战精灵再临oppo版下载-约战精灵再临oppo服3.92安卓手机版
8.0/324.0M
约战精灵再临oppo服是一款好玩的二次元画风手游,原版声优倾情献声的横版动作手游,富含Galgame的文字恋爱冒险元素以及各类模拟养成和社交休闲玩法:通过约会来...
7-zip中文版-7zip解压软件下载(7zip最新版)9.38 中文美化版【32位/64位】
8.2/310.0M
7-Zip是一款解压压缩软件,拥有最高的压缩比例,此次带来的是多国语言,含中文,无需安装注册即可使用。7-Zip主要特征使用了LZMA与LZMA2算法的7z格式...
7.6/890.4M
绿生集app是一款优质的绿色农贸商城软件,用户下载这款软件能够在上面了解到非常优质的生鲜商品信息,所有的商品都是产地直发,货源能够保障新鲜,非常的便捷。绿生集a...
7.9/1,580.8M
卡牌任务是一款文字剧情冒险卡牌游戏,在游戏中,你需要什么样的卡由你决定,不同卡的组合将决定你输赢,游戏变数相当大,玩家需要针对不同的情况改变自己的路线,快来下载...
一加手机驱动(OnePlusOne Driver)官方正式版
9.9/148.4M
OnePlusOneDriver是一加手机官方通用驱动程序包,主要用来手机与电脑相连,是刷机、手机root必备的工具,小编这附上的是一加手机驱动程序官方正式版,...
查看
7.5/68.3M
这是一款弹幕射击类型手游,玩法比较简单,忍者会不断地投掷飞镖手里剑,你需要做的就是帮助他加强自身技能和攻速,可玩性十分高!游戏介绍闲置手里剑是一款结合了弹幕射击...
FileGet app-FileGet软件1.1.0 最新版
7.6/1,079.2M
这款软件是一款非常不错的私人浏览器,他可以快速的收藏网址到标签,可以自定义的添加你喜欢的东西,支持快速的进行下载,让使用更加方便!FileGet介绍Filege...
8.1/1,855.1M
笃行抽签抽奖软件是专为企业比赛抽签或者抽奖用的软件,界面美观,可以自定义背景和奖项,还支持内定中奖人员,是非常智能人性化的一款抽奖软件。笃行抽签抽奖软件功能介绍...
2017微信感恩节祝福语大全-感恩节父母老师祝福语言大全带图片版
7.5/977.0M
2017年感恩节是11月23日,星期四,这是一个感恩的日子,小编带来了感恩节父母老师祝福语言大全,附有祝福图片,给自己的父母和老师送上诚挚的祝福...
我欲成仙1.53地图下载-我欲成仙1.53正式版【攻略+隐藏英雄密码】
8.0/1,948.2M
我欲成仙1.53正式版是一款非常热门的魔兽防守地图,新版本更新了很多内容,玩法更加多样化,修复了一些bug,更新了一些技能,地图更加稳定好玩!我欲成仙的最新版本...
迷你装甲送vip版下载-迷你装甲送V无限资源版1.0 满v版
8.2/1,261.0M
迷你装甲送V无限资源版是一款军事题材的策略战斗slg手游。游戏有着丰富的玩法内容,以经典第二次世界大战为背景,你将成为一名指挥官开启自己的战斗之路。组建属于自己...
僵尸入侵2.0.0最新地图-僵尸入侵2.0.0正式版【附攻略+定制英雄+新手礼包】
9.6/1,052.7M
僵尸入侵2.0.0正式版是一款全新的魔兽生存地图,这款地图支持1至10人游戏,本次更新了添加了全新隐藏/定制英雄,还有英雄专属装备,增加无限复活和游戏脚本,快来...
8.8/1,853.6M
pkg文件是很多游戏的安装包配置文件,是制作SymbianOS的核心部分,有时候需要对pkg进行编辑处理,这里为用户附上pkg引擎属性封包工具,支持解包封包,简...
8.2/1,160.8M
小蓝单车退押金app是一款非常好用的退押金软件,最近小蓝单车也发布了退市的消息,运行不下去了,看来共享单车的市场已经饱和了,小蓝单车目前退押金比较困难,可以选择...
8.9/1,176.6M
图片压缩工具是一款小巧便捷的图片压缩软件可以用于压缩jpg、bmp、gif等常见格式的图片,各种高清图片都会占用不少的空间,通过本工具能够快速便捷的对图片的体积...
8.7/186.9M
听有车的朋友吐槽说最怕就是洗车,很多地方便宜又不专业,专业的地方收费贵不说还要排队,今天东坡小编给他介绍了一款专业的洗车app——小厮洗车,不用出门可以直接预约...
flagfit下载-flagfit手环app1.3.9 蓝牙免费版
8.8/570.7M
FlagFit是一款时尚的运动睡眠监测的蓝牙低功耗产品1、支持计步功能,运动量卡路里转换功能2、监测睡眠,统计分析睡民质量3、支持分享运动健康信息等功能温馨提示...
随身钢琴乐队app安卓下载-随身钢琴乐队app1.2 手机版
7.8/339.1M
随身钢琴乐队app是一款好用的钢琴模拟练习软件,这款软件里键位齐全,你可以随时随地的进行练习与弹奏,在这里你可以每天进步,还有乐谱可以选择哦。随身钢琴乐队app...
8.5/1,127.7M
从过去拯救地球是一款科幻人生重生模拟游戏,玩家作为穿越者需要用自己的方式去保护地球,想方设法的防止外星生物来做破坏,守护好地球的安慰,游戏拥有非常震撼的画面感,...
8.8/1,516.6M
扶摇仙尘手游是一款经典武侠修仙题材的角色扮演手游,华丽的人物技能特效,感受仙界最唯美的修真,通过你的角色实力和操作来获得更多的荣誉吧,快来开启你的热血修仙之旅!...
汽车碰撞试验(Car Crash Test NIVA)1.0 安卓版
9.5/262.5M
高速破坏砖墙,破坏3DNIVA机器,完全破坏机器,尽量保持虚拟人完整,安排汽车进行碰撞测试和其他测试或只是享受驾驶乐趣,定制NIVA和其他汽车,使他们更舒适的你...
2016年10月新番动漫排行榜-2016日本动漫10月新番表1.0官方完整版
7.7/621.4M
二次元的小伙伴,7月新番正在火热上线,那么想要知道10月新番有哪些动漫吗?小编为大家带来2016日本动漫10月新番表,快来看看有没有你喜欢的动漫吧!2016日本...
yy注册机下载-等待YY自动注册软件(yy注册机)v3.4 最新绿色版
8.2/1,956.1M
等待YY自动注册软件是一款功能强大的YY注册机软件,支持手动模式和全自动模式,可以帮助你无限申请YY账号,免费使用,方便快捷,并且支持随机账号、随机密码、智能I...
8.1/1,872.7M
魔王与公主折扣福利版有着非常萌的二次元画风,单就游戏画面来看,质量是非常高的,游戏剧情设定也是非常有趣的,很完整,故事性很强,代入感也很强。游戏中有很多的职业设...