通过最近的讨论,大家应该已经知道了python和java都可以进行爬虫操作,只不过就是它们在具体实现的时候方式不同,过程量不一样而已,其实都是爬虫操作的好工具。本文小编就向大家介绍java爬虫爬取网页内容的原理及具体实现代码。
1、网络爬虫
按照一定的规则爬取网页上的信息,通常是爬取到一些URL之后然后对这些URL放入队列在一次次的进行搜索。
2、Java爬虫网页
网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来。
3、Java爬虫爬取网页内容方法:用apache提供的包
// commons-httpclient-3.1.jar
// commons-logging-1.0.4.jar
public static String createhttpClient(String url, String param) {
HttpClient client = new HttpClient();
String response = null ;
String keyword = null ;
PostMethod postMethod = new PostMethod(url);
// try {
// if (param != null)
// keyword = new String(param.getBytes("gb2312"), "ISO-8859-1");
// } catch (UnsupportedEncodingException e1) {
// // TODO Auto-generated catch block
// e1.printStackTrace();
// }
// NamevaluePair[] data = { new NamevaluePair("keyword", keyword) };
// // 将表单的值放入postMethod中
// postMethod.setRequestBody(data);
// 以上部分是带参数抓取,我自己把它注销了.大家可以把注销消掉研究下
try {
int statusCode = client.executeMethod(postMethod);
response = new String(postMethod.getResponseBodyAsString()
.getBytes( "ISO-8859-1" ), "gb2312" );
//这里要注意下 gb2312要和你抓取网页的编码要一样
String p = response.replaceAll( "//&[a-zA-Z]{1,10};" , "" )
.replaceAll( "<[^>]*>" , "" ); //去掉网页中带有html语言的标签
System.out.println(p);
} catch (Exception e) {
e.printStackTrace();
}
return response;
}Java爬虫中使用apache提供的包爬取网页内容还是很方便的,大家可以套入代码使用哦~更多java学习推荐:java教程。



