用HttpClient实现网络爬虫
2016-07-28 12:17
417 查看
上一篇爬虫之jsoup入门指南中,已经能够非常便捷的实现网络爬虫
但是,在那之前,尝试了一下用HttpClient实现网络爬虫
在此记录一下
HttpClient client = new HttpClient();
GetMethod get = new GetMethod("url");//
传入url,创建一个get请求,方法体内部应该就是初始化http
// 协议吧,具体的没去看源码
int status = client.excuteMethod(get);
if (status = HttpStatus.SC_OK) {
//请求成功
String
html = get.getResponseBodyAsString();// 此时已经获取到页面的内容
String[] rowContents = html.split("\n");// 用换行符将页面截断,方便解析
//
解析的方式可以自己想,由于前段时间第一次接触爬虫,所以处理方式有点二。。。
for (String rowContent :
rowContents) {
if (rowContent.contains("http://")) {// 当前行包含http链接的话,就打印出来
System.out.println(rowContent);
}
}
//
也可以将当前请求的页面存起来,慢慢分析,想一个好的解析办法
FileWriter write = new FileWriter("../../page.html");
write.writer(html, 0, html.length());
writer.flush();
writer.close();
return;
}
但是,在那之前,尝试了一下用HttpClient实现网络爬虫
在此记录一下
HttpClient client = new HttpClient();
GetMethod get = new GetMethod("url");//
传入url,创建一个get请求,方法体内部应该就是初始化http
// 协议吧,具体的没去看源码
int status = client.excuteMethod(get);
if (status = HttpStatus.SC_OK) {
//请求成功
String
html = get.getResponseBodyAsString();// 此时已经获取到页面的内容
String[] rowContents = html.split("\n");// 用换行符将页面截断,方便解析
//
解析的方式可以自己想,由于前段时间第一次接触爬虫,所以处理方式有点二。。。
for (String rowContent :
rowContents) {
if (rowContent.contains("http://")) {// 当前行包含http链接的话,就打印出来
System.out.println(rowContent);
}
}
//
也可以将当前请求的页面存起来,慢慢分析,想一个好的解析办法
FileWriter write = new FileWriter("../../page.html");
write.writer(html, 0, html.length());
writer.flush();
writer.close();
return;
}
相关文章推荐
- HttpUtils请求
- xml pull 解析 XlistView 上拉加载 下拉刷新
- 接口回调(重点是理解)
- 浏览器访问网页的详细内部过程
- android6.0SDK 删除HttpClient的相关类的解决方法
- 网络请求及各类错误代码含义总结(包含AFN错误码大全)
- LibCurl HTTP部分详细介绍
- javaweb学习总结(十)——HttpServletRequest对象(一)
- https://www.daocloud.io/
- 【nginx】App打点场景下,用nginx的log捕获http协议的$request_body的正确方法
- javaweb学习总结(八)——HttpServletResponse对象(二)
- javaweb学习总结(七)——HttpServletResponse对象(一)
- Java之GUI和网络编程
- 跨站点请求伪造解决方案
- javaweb学习总结(四)——Http协议
- 网络面试题整理
- HTTP API 设计指南(结尾)
- HTTP API 设计指南(响应部分)
- HTTP API 设计指南(请求部分)
- HTTP API 设计指南(基础部分)