手机
当前位置:查字典教程网 >网页设计 >应用技巧 >HttpClient抓取网页的两种方式
HttpClient抓取网页的两种方式
摘要:一、利用NodeFilter对网页进行分析1、生成一个Parsera.通过url提取网络上的网页复制代码代码如下:Parserparser=...

一、利用NodeFilter对网页进行分析

1、生成一个Parser

a.通过url提取网络上的网页

复制代码 代码如下:

Parser parser = new Parser();

parser.setURL("http://www.yahoo.com.cn");

b.提取本地网页文件

通过读文件把网页文件转化成字符串;

复制代码 代码如下:

Parser parser=Parser.createParser(html,charset);

2、利用NodeFilter做一个filter

a.利用Tag Name

NodeFilter filter=new TagNameFilter("IMG");

b.利用Tag Class

NodeFilter filter = new NodeClassFilter(ImageTag.class);

3、通过匹配filter,得到所有符合条件的Tag

NodeList list=parser.extractAllNodesThat(filter);

for(int i=0;i String content=list.elementAt(i).toHtml();//得到符合条件的Tag 内容

如果针对具体情况进行更加详细的处理,则:

复制代码 代码如下:

ImageTag imageTag=(ImageTag)list.elementAt(i);

…………

}

然后根据需要做相应的处理。

二、利用Visitor对网页进行分析

1、生成一个Parser

a.通过url提取网络上的网页

复制代码 代码如下:

Parser parser = new Parser();

parser.setURL("http://www.yahoo.com.cn");

b.提取本地网页文件

通过读文件把网页文件转化成字符串;

复制代码 代码如下:

Parser parser=Parser.createParser(html,charset);

2、用visitor访问页面

复制代码 代码如下:

ex:ObjectFindingVisitor visitor=new ObjectFindingVisitor();

parser.visitAllNodesWith(visitor);

3、通过特定的visitor得到符合条件的Tag

复制代码 代码如下:

Node[] nodes=visitor.getTags();

for(int i=0;i ImageTag imageTag=(ImageTag)nodes[i];

…………

//根据需要做特定处理

}

【HttpClient抓取网页的两种方式】相关文章:

彻底解决"停用连接出错"问题的两种方法

asp运行特别慢之iis6假死现象的一种解决方法

卸载杀毒软件后启动Outlook后的出错处理

访问Excel的几种方式介绍

Google打不开的解决方法和IP地址表

Windows启动速度缓慢的八个原因

解决Photoshop CS3在Win 2003下无法安装的解决方法

Windows 服务控制管理器通信的命令行程序

网页中flash文件的另类下载方法

30秒清除你的电脑系统中的垃圾文件

精品推荐
分类导航