应用如何自动获取网页数据?

adiao713 2009-04-13 11:53:11
急求!

1、要自动获取网站网页某部分每天更新的数据;

2、而且可以进一步进入这些更新的数据的链接,获取进入链接页面的数据。

目前比较主流的方法是怎么样获取的。

请各位同行和前辈指点迷津!谢谢。
...全文
1568 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
anny120 2011-02-17
  • 打赏
  • 举报
回复
我也要写这个
Epiphone 2009-04-13
  • 打赏
  • 举报
回复
可以写个定时任务 然后执行下面代码
import org.htmlparser.tags.LinkTag;
import org.htmlparser.util.NodeList;
import com.yao.http.HttpRequester;
import com.yao.http.HttpRespons;

/**
* JAVA中使用Htmlparse解析HTML文档,使用htmlparse遍历出HTML文档的所有超链接( <a>标记)。
*
* @author YYmmiinngg
*/
public class Test {
public static void main(String[] args) {
try {
/* 首先我们先使用HttpRequester类和HttpRespons类获得一个HTTP请求中的数据(HTML文档)。 可以从(http://download.csdn.net/source/321516)中下载htmlloader,该库中有上述类;或从我的《JAVA发送HTTP请求,返回HTTP响应内容,实例及应用》一文中摘取上述两JAVA类的代码。htmlparse可以从(http://download.csdn.net/source/321507)中下载
*/
Map <String, String> map = new HashMap <String, String>();
HttpRequester request = new HttpRequester();
HttpRespons hr = request.sendGet("http://news.baidu.com");

Parser parser = Parser.createParser(hr.getContent(), hr
.getContentEncoding());
try {
// 通过过滤器过滤出 <A>标签
NodeList nodeList = parser
.extractAllNodesThatMatch(new NodeFilter() {
//实现该方法,用以过滤标签
public boolean accept(Node node) {
if (node instanceof LinkTag)// <A>标记
return true;
return false;
}
});
// 打印
for (int i = 0; i < nodeList.size(); i++) {
LinkTag n = (LinkTag) nodeList.elementAt(i);
System.out.print(n.getStringText() + " ==>> ");
System.out.println(n.extractLink());
}
} catch (Exception e) {
e.printStackTrace();
}

} catch (Exception e) {
e.printStackTrace();
}
}
}


=============================================================================
健康 ==>> /n?cmd=1&class=healthnews&pn=1&from=tab
科技 ==>> /n?cmd=1&class=technnews&pn=1&from=tab
社会 ==>> /n?cmd=1&class=socianews&pn=1&from=tab
有你更有力量—2009年中央电视台3•15晚会 ==>> http://finance.cctv.com/special/20090315/01/index.shtml
<img src='http://eiv.baidu.com/mc_files/20090310/20090310173139_40437500T1T396856.jpg' width=185 height=23 border=0> ==>> http://ma.baidu.com/ma/rcv/click.php?t=uv-b5HDhTv-b5Hc1PW64FMIGujYknHR1n16hpv-b5HDhULKET1YkFhu85yF9pywdgvD4nzudThsqpZwYTaR1fiRzwBRzwhGdpyP-QMPGUhD8mvqVQhP8FHFAnW0srNt1nHR-nbmhTv3qrHnhT1d-n1TsnWR1n1n4rAN9rjfsFMFsULnqniubIjd8iAnkRj7WHZFJRWP8Ts
<font color="#BB2A31">人民日报:在思想认识上取得新提高 </font> ==>> /n?cmd=2&class=top&page=%68%74%74%70%3a%2f%2f%63%63%6e%65%77%73%2e%70%65%6f%70%6c%65%2e%63%6f%6d%2e%63%6e%2f%47%42%2f%31%34%31%36%37%37%2f%38%37%34%37%33%2f%31%34%38%39%35%32%2f%31%34%39%31%33%33%2f%38%39%37%37%37%33%31%2e%68%74%6d%6c&cls=top
市公安机关部署深入学习实践科学发展观活动 ==>> http://www.dahuawang.com/localnews/showlocal.asp?no=116310
汕头海事局开展学习实践科学发展观活动 ==>> http://www.dahuawang.com/localnews/showlocal.asp?no=116308
bowlongcn 2009-04-13
  • 打赏
  • 举报
回复
HttpClient+HtmlParser+正则表达式 可以解决你的问题。
当然还有其他方法。不过这个是最常用的
JJTwo 2009-04-13
  • 打赏
  • 举报
回复
網路爬蟲!沒做過!

貌似有些簡單的開源的!

可以先照著瞭解下!
adiao713 2009-04-13
  • 打赏
  • 举报
回复
谢谢各位及时的回答!结贴加分!
xlyyc 2009-04-13
  • 打赏
  • 举报
回复
LS正解,偶也写过好几个这样的东西了

81,106

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧