写一个测试用的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和规则组来进行过滤和匹配。
它被设计的小,快速,灵活而且独立。HtmlCleaner也可用在Java代码中,当命令行工具或Ant任务。解析后编程轻量级文档对象,能够很容易的被转换到DOM或者JDom标准文档,或者通过各种方式(压缩,打印)连续输出XML。
1.HtmlCleaner的文档对象模型拥有了一些函数,处理节点和属性,所以在序列化之前搜索或者编辑是非常容易的。
2.提供基本HtmlCleanerDOM的XPath支持
3.使用XML配置文件让创建定制tag变得更加容易
4.修复多个bug以及API改进
展开内容
电脑桌面书签下载-电脑书签软件(LinkStash)v3.7.1 中文绿色版【附注册机】
FileLocator Pro-文件搜索软件(FileLocator Pro)7.5.2085 中文版
三国志幻想大陆官服下载-三国志幻想大陆4.8.11 最新版
Ballz Hopz手游1.0 最新版
apple支持app官网下载-apple支持app3.0.3 官方苹果版
标记助手app-图片标记助手1.0 中文免费版
健康新甘肃app官网下载安装-健康新甘肃APP(健康甘肃)2.6.2 最新版
西门子mm430变频器说明书-西门子MM430变频器中文使用手册pdf格式用户指南
锁屏小工具-电脑锁屏小宝宝1.0 绿色版
火车票轻松购pc版下载-火车票轻松购电脑版5.9 官方最新版
京东美工王(京东特效代码生成器)1.8 绿色免费版
点众快看小说下载-点众快看小说app3.9.9.3223无广告版
大话手游3D变态版下载-大话手游3Dbt版2.5.0 安卓最新版
大年初二祝福图片2021-大年初二拜年祝福图片带字最新版
荣誉证书制作软件-贵鹤证书制作打印助手2.5 免费版
ps cs6中文语言包-adobe photoshop cs6简体中文语言包
国学上下五千年app下载-国学上下五千年app1.39.39x 安卓版
未来战台服下载-未来战台服渠道服1.0最新版
天音阿里巴巴数据采集软件下载-天音阿里巴巴数据采集软件1.31.1 绿色版
阿飞图库下载-阿飞图库手机版1.0.2 安卓版
南豪屏幕键盘全记录软件下载-南豪屏幕键盘全记录7.3.6 官方版
网易邮箱助手下载-网易邮箱助手(网易邮箱客户端)3.0.5.5 官网版
清明节psd素材-清明节淘宝促销海报设计素材psd分层【情系清明节放心购】
种族守遗1.28隐藏英雄下载-种族守遗1.28正式版附隐藏英雄密码+攻略
龙城传奇单职业版下载-龙城传奇定制版1.0 最新版
9.8/972.9M
会化妆的灰姑娘是一款对小公主形象进行装扮打扮的益智游戏。这里包含了海量的服装饰品可以选择,让宝宝搭配出一个美丽漂亮的现代美女公主形象。多种游戏模式,打扮完以后还...
粉色系女生头像动漫可爱萌-粉色系少女心头像大全2018小仙女软妹版
9.9/1,508.7M
粉色系少女心头像大全是这几年非常流行的一个色系,一直以来不管什么年龄段的妹子都非常喜欢设置粉色系头像,小编给大家整理了一些非常热门的粉色少女心头像!粉色系少女心...
数字地牢越狱(Digital Dungeon)1.0.1 安卓手机版
7.8/1,776.1M
是一款越狱题材的动作射击手游——数字地牢越狱(DigitalDungeon),充满未来科技感的游戏画面,在这个虚拟的世界进行探索,运用高科技的武器,逃离网络虚拟...
10.0/411.3M
一款由区政府打造的政府服务资讯类APP,小区最近有什么好玩的活动?办理养老、社保登记、注册公司需要什么材料?今天的超市有什么优惠?打开手机“在东港”APP就知道...
9.5/399.6M
好笔头业务管家是一款非常专业的业务管理软件。是企业员工的必需品,可记事,可提醒。十分方便。有需要的可以来东坡下载使用!好笔头业务管家简介好笔头业务管家原名好笔头...
二维码生成器-草料 二维码生成器3.2.15.820 免费版
8.7/1,304.1M
草料二维码生成器是一款非常不错的二维码生成器。操作简单,还可以批量生成。十分强大。有需要的可以来东坡下载使用!草料二维码生成器说明草料二维码生成器是一个简单快速...
文档转图片软件(ImagePrinter Pro)5.6.00 注册版
9.3/1,959.3M
ImagePrinter是一款很特别的文件转换软件,它能够将任何文件以图片的方式打印出来。例如可以将网页文件、Word文件、PDF文件等直接打印成图片格式。软件...
魔法少女伊莉雅闹钟免费下载-魔法少女伊莉雅闹钟app免费版1.0.1 ios免费版
7.7/1,531.1M
魔法少女伊莉雅闹钟是一款根据魔法少女伊莉雅剧场版动画制作的闹钟软件,这款闹钟软件非常有趣,有超萌的语言喊你起床,需要的朋友可以来下载!魔法少女伊莉雅闹钟宣传视频...
卖家巴士下载-淘宝卖家巴士刷人气软件v1.0.1 官方最新版
8.6/573.9M
卖家巴士是一款专注于淘宝刷人气的软件,软件可以帮助用户一键进行提升权重,增加人气和推广商品等,让你的商品得到曝光!软件介绍权重提升工具,组合使用,提升宝贝流量补...
NBA2K10修改器-NBA2K10球员克隆修改器v1.0 中文绿色版
9.5/1,841.0M
NBA2K10是一款体育篮球类的游戏,说起NBA,大家就知道游戏怎么玩啦!该款迷你修改工具,可以修改多个选项,试看使用说明,强力功能无需多说。使用说明球员克隆器...
禹星yy协议附注册机破解版-禹星yy协议附注册机2.1 免费破解版
7.7/925.1M
禹星yy协议附注册机里面就是附带有yy协议帮助你一键喊话、修改马甲、无限刷花等方面的功能,注册机可以帮助你免费注册、免费打码,完全不收费就能够用。禹星yy协议附...
弑魔修仙传3.2下载-弑魔修仙传3.2正式版【附隐藏英雄密码+攻略】
9.2/601.2M
弑魔修仙传3.2正式版正式的发布,全新的地图版本,当然也是修复上一个版本的英雄bug以及部分秘籍问题,具体的是需要你自己下载去体验的!弑魔修仙传3.2正式版地图...
What’s your Hidden Power (你的神秘力量手游)3.0.10 中文版
9.2/1,687.2M
你的神秘力量手游是一款非常好玩的美少女文字冒险游戏,在这里你可以扮演很多角色进行游戏。游戏中有三位美少女在社团遇您相遇,并因此一见钟情,美好的爱情故事在这里展开...
多元鞋店销售管理系统-销售管理软件破解版1.0.0.0 绿色免费版
8.9/469.1M
销售管理软件破解版是一款专为服装、鞋帽、内衣零售业量身定制的进销存管理系统。软件界面简洁美观、易学、易用、易管理,只要有电脑操作基础,即可快速上手,轻松完成日常...
无人机出租车模拟器下载-无人机出租车模拟器游戏1.0.3 去广告版
9.7/530.0M
无人机出租车模拟器是一款很有科技感的出租车模拟游戏,飞行在天空中的出租车,有很多的载具类型可以解锁,注意好交通情况,将你的顾客安全送达。无人机出租车模拟器游戏特...
7.7/1,324.7M
街霸拳王经典格斗街机类的游戏,全明星的战斗阵容体系,掌握不同的英雄技能,组建强大的队伍打出世界冠军的荣誉,收获无穷的力量。街霸拳王手游介绍精彩的拳王争霸又再次迎...
8.2/1,773.9M
快点阅读是一款非常好用的对话式阅读软件,把传统的阅读模式改为对话式小说,让你有焕然一新的体验。快点阅读软件功能1、一键锁屏功能;2、个性阅读统计;3、随心所欲体...
抖音年龄大了一切求稳无水印高清图合集-年龄大了一切求稳比起心动我更喜欢心安高清图免费版
9.9/1,848.6M
“年龄大了,一切求稳,比起心动,我更喜欢心安”大家最近应该被这段话刷屏了吧,这是抖音上非常火的一段话,也是很多人真实的心情写照,表达了很多人的心声,这里给大家带...
图标提取简工具下载-李某某全尺寸图标提取简易工具1.2 绿色免费版 【易语言图标提取器】
7.6/1,381.0M
虽然现在网络上有不少的图标提取软件,但是都是操作复杂,而且支持的类型也少,都不如李某某全尺寸图标提取简易工具好用,而且最重要是可以选择多种的图标尺寸来进行保存!...
百炼成仙1.1.96-百炼成仙1.1.96正式版防守地图无cd免费下载
7.9/1,085.8M
百炼成仙1.1.96地图已经正式发布,非常好玩的防守地图,新版本去除平台限制,还修改了英雄技能cd,玩起来更爽了,快来下载吧!百炼成仙1.1.96正式版介绍地图...
Corel产品注册机2019免费下载-corel注册机2020汉化版2019.03.05 最新版
8.1/1,095.1M
最新版本的Corel注册机,支持2019年的产品,功能强大,使用简单,目前又完整汉化,想要破解Corel软件产品的朋友必备,小编这里附上最新版本,完全免费下载。...
8.4/1,347.9M
魔术伪原创引擎是一款伪原创工具,专门针对中国主流搜索引擎开发,非常适合用来做SEO,帮助你对网上复制的文章进行快速修改加工,瞬间生成带图的文章,让你的文章更加原...
百鬼夜行无双传奇私服下载-百鬼夜行无双传奇满v版2.0.1 安卓版
7.7/643.3M
百鬼夜行无双传奇是一款全新推出的角色扮演rpg传奇手游。游戏有着宏大的世界观,复刻了经典传奇1.76的版本内容,让你重温儿时经典。还有战法道三职业任你选择,随时...
7.8/809.3M
这是一份主题为“尊师重教”的ppt课件,适合作为主题班会课件进行使用,因此,我们可以将其称为是尊师重教主题班会ppt课件。该尊师重教主题班会ppt课件共由30页...
8.3/1,880.6M
现在国内的快递是有很多的种类的,想快速的打印出每一种快递单还是有一定的麻烦的,那么现在小编就给你的电脑上介绍下面的这款飚风快递单打印软件!飚风快递单打印软件介绍...