写一个测试用的html文件:html-clean-demo.html翻转堆栈游戏下载-Flip Stack(翻转堆栈手游)1.2 安卓最新版
<!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和规则组来进行过滤和匹配。
它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。
1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。
2.提供基本HtmlCleanerDOM的XPath支持
3.使用XML配置文件让创建定制tag变得更加容易
4.修复多个bug以及API改进
展开内容
肥狗打工记破解版下载-肥狗打工记破解版2.0.0 免广告版
sagomini游戏世界下载-sagomini World游戏世界3.4 安卓免费版
名育app1.9.4 安卓最新版
wink app下载-meitu wink2.5.0 安卓版
链家app下载-链家手机app9.83.80 安卓最新版
熊猫搞搞装逼神器下载-熊猫搞搞装逼神器1.0安卓最新版
岑巩政府党建软件下载-岑巩党建App1.2.0 安卓最新版
自由骑共享单车app下载-自由骑共享单车1.2.1 官方安卓最新版
弘扬共享汽车ios版-沈阳共享汽车苹果版1.0.0 官方IPhone版
印度卡车货物运输游戏下载-印度卡车货物运输游戏(India Truck Cargo 3D)1.0 安卓版
卓越之光变态版奇迹游戏下载-卓越之光变态版奇迹游戏1.01 礼包版
2015年日历表打印版-2015年日历表直接打印版全年带阴历免费下载
麦当劳全系统框架安卓版下载-麦当劳全系统框架app1.0 免费版
量子特攻内测版下载-量子特攻体验服0.100.458 安卓版
巨人时代塔防官网下载-Age of Giants(巨人时代塔防手游)1.0安卓中文版
火影忍者进化高级版下载最新版-火影忍者进化高级版中文(Revival Ninja PRO)1.2 最新版
天涯OL游戏下载-天涯online2手游1.3.2 安卓版
三十六计之神降三国2.07下载-三十六计之神降三国2.07破解版【破解定制英雄+攻略】
某零售在线课堂下载器1.0 绿色免费版
斗罗大陆神界传说小米版下载-斗罗大陆神界传说小米版v2.0.2 安卓版
电脑文件同步备份软件-文件同步备份(dsynchronize)2.31.1 绿色汉化版
i昭院手机APP下载-i昭院app学生版3.2.0 官方版
红米2A移动版刷机包下载-红米2A移动版刷机包999.0 最新版
返利助手app下载-返利助手7.0.3 安卓版【淘宝优惠省钱】
回忆之旅下载正版-老人的旅途回忆之旅手游1.10.7 最新版
搜狗三维地图下载器官方下载-搜狗三维地图下载器2.0 官方最新版
8.0/1,803.6M
搜狗三维地图下载器是一款地图下载工具,使用搜狗三维地图下载器,用户可以找到自己需要的三维地图资源,如有需要,用户可以选择地图区域进行下载,快来下载吧!搜狗三维地...
9.3/595.7M
天傲多功能调色取色精灵是一款屏幕取色工具,帮助你快速调色取色,为美工设计人员和程序开发者提供方便,提高工作效率,省时省力,绝对是您必备的取色工具!功能介绍:1....
9.8/1,590.1M
滑动轴承设计工具是一款很不错的实用小工具,利用这款软件能够帮助你设计滑动轴承,功能很强大,占用内存极小,非常的好用!软件介绍滑动轴承设计工具是一款非常好用的滑动...
小学英语四年级下册外研版下载-小学英语四年级下册外研版1.0.0 有声版
9.3/1,806.5M
小学英语四年级下册外研版是专门为小学英语四年级开发的学习软件的特殊版本。是一本十分方便的智能电子课本,该课本配有生动的语音,能随时随地帮忙孩子更好的学习。小学英...
老板生活3D游戏下载-老板生活3D去广告版v1.0.62 安卓版
7.5/1,254.7M
老板生活3D是一款非常好玩的休闲类游戏,这款游戏中你将扮演一位老板,你需要的就是招募人才,还有管理你的员工,可以查看个人的能力,还能进行一些趣味性的游戏体验!老...
8.0/263.6M
雪地驾驶模拟器手游是一款模拟驾驶玩法的游戏,你可以真实体验驾驶的感觉,在这个冰天雪地里面,你可以驾驶任何车辆,飙车前行,你要小心路面非常滑!雪地驾驶模拟器手游介...
9.7/382.0M
刷机实际上就是和电脑重装系统一样,只是因为一些小白给叫乱了,如果你是一个电脑专业人员,装过机的,一定知道装机后电脑上总是有一些乱七八糟的默认的东西的,刷机也是一...
8.5/178.4M
给自己的电脑上面安装一款不错的视频在线播放器,看一些自己想看的电影以及电视,当然是高清的版本以及资源多的话就更好了,这款慢慢来播放器就是你不错的选择!慢慢来播放...
恶魔战士游戏最新版免费下载-恶魔战士手游安卓版(Demon Warrior)1.3手机最新版
7.9/1,615.2M
恶魔战士手游是一款具有魔幻风格的战斗游戏,在游戏中玩家需控制酷炫的恶魔战士,使用不同的武器装备与敌人进行战斗,还有多种关卡和boss等你来挑战,喜欢这款游戏的玩...
iPhoneX刘海去除软件下载-苹果X刘海去除软件app1.0 正式版
9.8/514.7M
苹果X刘海去除软件是一款非常实用的手机软件,在这里用户可以把自己的iPhoneX的上边刘海去除,让它看上去不那么不好看,并且能够修改你的壁纸来调整缺口。X刘海去...
9.0/132.8M
简爱百合助手是一款专门为百合相亲交友网站打造的交友相亲助手。它可以帮助您实现快速交友,海量发送信息,各种新颖的功能。有这方面需要的朋友不要错过了,快来下载使用吧...
9.5/1,590.1M
这是一款海量好物的购物商城软件,很多用户都在问省喵喵靠谱吗,通过这个app你可以找到非常多的好货,各种商品在这里都可以找到!省喵喵返利商城介绍省喵喵平台上为喜欢...
中小学生防溺水安全教育黑板报版面设计图-2017全国中小学生防溺水安全知识资料及图片最新完整版
9.5/568.2M
一年一度的全国中小学生防溺水安全教育活动又要到了,小编为大家带来2017全国中小学生防溺水安全知识资料及图片,很实用,孩子们可以从中学到好多书本上学不到的知识,...
8.0/1,164.6M
刺杀英雄是一款非常好玩的冒险游戏,游戏里有很多不同的英雄,这就需要你闯关获得大量的武器去武装自己的英雄,非常的魔性搞笑,为了正义去刺杀坏人吧!刺杀英雄游戏介绍刺...
楼下的早餐店安卓下载-楼下的早餐店最新版本v2.9.0 官方正版
8.9/1,415.3M
楼下的早餐店是一款很温馨的餐厅经营游戏。游戏有着丰富的玩法内容,玩家将成为一个早餐店的老板,好好的经营自己的店子。一边为客人烹饪美食,一边同他们分享遭遇。多种游...
梦仙灵0.05折下载-梦仙灵0.05折送灵兽图鉴1.0 安卓版
8.6/1,955.0M
国风挂机,修仙逐梦仙途,梦仙灵0.05折送灵兽图鉴以东方神话为核心背景,设定在“鸿蒙时代”——天魔波旬突破封印入侵三界,天地陷入混乱,生灵涂炭。玩家将化身“救世...
9.9/1,623.4M
这游戏有毒,开局选小乞丐,轻松当掌柜,好玩不氪金!鬼市风云游戏采用了国风古典画面,精彩的剧情,入汴梁一梦,品市井百态!鬼市风云手游特点1、医馆、钱庄、香店等不同...
8.0/767.3M
这是一款街机动作跑酷类型玩法的游戏,小机器人需要抓住更多的水晶,每一关卡都有不同的任务,不仅仅是抓住水晶,你还需要躲开各种障碍物哦!游戏介绍非常有趣的一个动作跳...
7.8/991.0M
苍蓝断章是一款极致日系二次元画风的RPG手游,在神秘的异世界国度中,整个国家陷入了无限的战斗中,为了平息战争,作为名望家族的继承人,可以率领自己的骑士后裔,帮助...
8.8/1,727.2M
360加密安卓版是一款手机文件加密软件,软件支持图片、视频、文档加密功能,全方位保护您的文档或隐私。软件介绍:360加密APP是一款能够快速为你的手机文件(图片...
8.4/214.9M
妖灵恋歌是一款超级好玩的仙侠战斗角色扮演rpg手游。游戏有着丰富的玩法内容,玩家将成为主角开启自己的冒险之旅。多种游戏模式,探索未知的场景地图,慢慢的提升自己的...
少年三国志零礼包版-少年三国志零激活码1.0.10018正式版
7.7/1,095.5M
少年三国志零激活码是游族公司出品的一款三国志题材的手游,三国名将通通都到碗里来!懒人模式,轻松挂机升级打Boss,在上班的同时一统三国;精美卡通渲染,流畅骨骼动...
热汗舞蹈app下载安装-热汗舞蹈app安卓版df-1.7.1.0 最新版
8.3/133.6M
高效燃脂舞蹈健身APP,AI智能生成舞蹈健身计划,使用热汗舞蹈让减肥变得更容易,保持动力,优化你的训练。轻松舞动,塑形燃脂。让你在增强肢体协调性的同时还可以锻炼...
有趣视频免费去水印app下载-有趣视频去水印app1.0.0安卓版
8.8/1,036.6M
有趣视频去水印app:针对各类不同的视频快速在线去水印的手机软件,利用这款软件可以将各种视频的水印一键在线去除,更好的享受在线去除不同水印的乐趣,而且去除水印的...
9.1/528.7M
BlueJ是专为教学而设计的、Java环境下的一个内置编辑器、编译器、虚拟机、调试器的多应用软件,其在小规模的软件开发方面也是颇为使用的。其毫不杂乱,易于使用和...