提取网页内容 — htmlPraser


Warning: Undefined array key "HTTP_REFERER" in /www/wwwroot/prod/www.enjoyasp.net/wp-content/plugins/google-highlight/google-hilite.php on line 58

htmlparser是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或
提取html。它能超高速解析html,而且不会出错。
毫不夸张地说,htmlparser就是目前最好的html解析和分析的工具。
无论你是想抓取网页数据还是改造html的内容,用了htmlparser绝对会忍不住称赞。
htmlparser基本功能
1. 信息提取
? 文本信息抽取,例如对HTML进行有效信息搜索
? 链接提取,用于自动给页面的链接文本加上链接的标签
? 资源提取,例如对一些图片、声音的资源的处理
? 链接检查,用于检查HTML中的链接是否有效
? 页面内容的监控
2. 信息转换
? 链接重写,用于修改页面中的所有超链接
? 网页内容拷贝,用于将网页内容保存到本地
? 内容检验,可以用来过滤网页上一些令人不愉快的字词
? HTML信息清洗,把本来乱七八糟的HTML信息格式化
? 转成XML格式数据
htmlparser常用代码
取得一段html代码里面所有的链接C#版本,java版本类似:
string htmlcode = “<HTML><HEAD><TITLE>AAA</TITLE></HEAD><BODY>” + …… + “</BODY></HTML>”;
Parser parser = Parser.CreateParser(htmlcode, “GBK”);
HtmlPage page = new HtmlPage(parser);
try
{ parser.VisitAllNodesWith(page);}
catch (ParserException e1)
{ e1 = null;}
NodeList nodelist = page.Body;
NodeFilter filter = new TagNameFilter(“A”);
nodelist = nodelist.ExtractAllNodesThatMatch(filter, true);
for (int i = 0; i < nodelist.Size(); i++)
{
LinkTag link=(LinkTag) nodelist.ElementAt(i);
System.Console.Write(link.GetAttribute(“href”) + “\n”);
}