******网络爬虫,Java*********
时间:2010-09-09
来源:互联网
/**
* 由源代码得到所有标题和链接地址
* @param htmlcode
*/
public static void getLink(String htmlcode){
Parser parser = Parser.createParser(htmlcode, "utf-8");
HtmlPage page = new HtmlPage(parser);
try{
parser.visitAllNodesWith(page);
}
catch(ParserException e1){
e1 = null;
}
NodeList nodelist = page.getBody();
NodeFilter filter = new TagNameFilter("A");//筛选<a>标签
HasAttributeFilter hasfilter=new HasAttributeFilter("class","big");//筛选class="big"的<a>
LinkStringFilter linkstrfilter=new LinkStringFilter("http");//筛选连接里有http的
NodeFilter[] nodefilter={filter,hasfilter,linkstrfilter};
AndFilter andfilter=new AndFilter(nodefilter);
nodelist = nodelist.extractAllNodesThatMatch(andfilter, true);
for (int i = 0; i < nodelist.size(); i++)
{
LinkTag link=(LinkTag) nodelist.elementAt(i);
System.out.println(i+"="+link.getAttribute("href")+"||||"+link.getLinkText());
}
}
使用的htmlparser,现在是我能得到页面的链接及链接标题,想要的结果是把这些链接页面的内容也能得到,由于这些链接地址有多样性,就是不是同一个网站的,求通用一些的方法啊!!!高人指点啊!有demo发到我邮箱也可以
[email protected]
* 由源代码得到所有标题和链接地址
* @param htmlcode
*/
public static void getLink(String htmlcode){
Parser parser = Parser.createParser(htmlcode, "utf-8");
HtmlPage page = new HtmlPage(parser);
try{
parser.visitAllNodesWith(page);
}
catch(ParserException e1){
e1 = null;
}
NodeList nodelist = page.getBody();
NodeFilter filter = new TagNameFilter("A");//筛选<a>标签
HasAttributeFilter hasfilter=new HasAttributeFilter("class","big");//筛选class="big"的<a>
LinkStringFilter linkstrfilter=new LinkStringFilter("http");//筛选连接里有http的
NodeFilter[] nodefilter={filter,hasfilter,linkstrfilter};
AndFilter andfilter=new AndFilter(nodefilter);
nodelist = nodelist.extractAllNodesThatMatch(andfilter, true);
for (int i = 0; i < nodelist.size(); i++)
{
LinkTag link=(LinkTag) nodelist.elementAt(i);
System.out.println(i+"="+link.getAttribute("href")+"||||"+link.getLinkText());
}
}
使用的htmlparser,现在是我能得到页面的链接及链接标题,想要的结果是把这些链接页面的内容也能得到,由于这些链接地址有多样性,就是不是同一个网站的,求通用一些的方法啊!!!高人指点啊!有demo发到我邮箱也可以
[email protected]
作者: shlichanglong 发布时间: 2010-09-09
除非你只想获得网页里的纯文本内容,如果需要读取指定的内容,没有通用办法。
同一网站的同一页面,你也得随着网站的改版而修改代码。
同一网站的同一页面,你也得随着网站的改版而修改代码。
作者: icy_csdn 发布时间: 2010-09-10
也用同样的办法得到内容不就可以了么。
作者: dahaidao 发布时间: 2010-09-10
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28