`
leiwuluan
  • 浏览: 706954 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

网络爬虫 apache HttpClient

 
阅读更多

什么是网络爬虫

网络爬虫
(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁,自动索引,模拟程序或者蠕虫。

网络爬虫
是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。

随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战。搜索引擎(Search Engine),例如传统的通用搜索引擎AltaVista,Yahoo!和Google等,作为一个辅助人们检索信息的工具成为用户访问万维网的入口和指南。但是,这些通用性搜索引擎也存在着一定的局限性


就是捉取和搜集网络数据。
它可以模拟客户端请求,登录权限的模拟,然后捉取数据。-->进行分析! 

 

 

 

简单爬虫

public static String getContentByUrl(String url) throws Exception{
	HttpClient client = new HttpClient();
	GetMethod get = new GetMethod(url);
	
	setHead(get);
	
	int state = client.executeMethod(get);
	if (200 == state) {
		return (new String(get.getResponseBodyAsString().getBytes("iso-8859-1"),"utf-8"));
	}else{
		return null;
	}
}

public static HttpMethodBase setHead(HttpMethodBase get){
	get.addRequestHeader("Host", "www.baidu.com");
	get.addRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 5.1; rv:8.0) Gecko/20100101 Firefox/8.0");
	get.addRequestHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
	get.addRequestHeader("Accept-Language", "zh-cn,zh;q=0.5");
//		get.addRequestHeader("Accept-Encoding", "gzip, deflate");
	get.addRequestHeader("Accept-Charset", "GB2312,utf-8;q=0.7,*;q=0.7");
	get.addRequestHeader("Connection", "keep-alive");
	get.addRequestHeader("Referer", "http://www.baidu.com/member/login");
	get.addRequestHeader("Cookie", "PHPSESSID=195cb3ecdf2eb2e5ef694a922bb478e3; Hm_lvt_bc97aabf99434efa3940a5886150c7e7=1323657227055; Hm_lpvt_bc97aabf99434efa3940a5886150c7e7=1323657251442; local[ip]=61.148.82.174; local[uid]=294; local[is]=y");
	
	return get;
}

public static void main(String[] args) throws Exception {
	getContentByUrl("http://www.baidu.com/member/login");
}
 

 

 

 

分享到:
评论
4 楼 1664796794 2013-12-03  
高手啊 很多文章对我来说有很大的帮组啊  0.0 
3 楼 1664796794 2013-12-03  
  • [list]
  • [*][list]
  • [*][*][list]
  • [*][*][*][list]
  • [*][*][*][*][list]
  • [*][*][*][*][*][list]
  • [*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][*][*][*][*][*][*][list]
  • [*][*][*][*][*][*][*][*][*][*][*][*][*][*]
  • [*][*][*][*][*][*][*][*][*][*][*][*][*]
  • [*][*][*][*][*][*][*][*][*][*][*][*][/list]
  • [*][*][*][*][*][*][*][*][*][*][*][/list]
  • [*][*][*][*][*][*][*][*][*][*][/list]
  • [*][*][*][*][*][*][*][*][*][/list]
  • [*][*][*][*][*][*][*][*][/list]
  • [*][*][*][*][*][*][*][/list]
  • [*][*][*][*][*][*][/list]
  • [*][*][*][*][*][/list]
  • [*][*][*][*][/list]
  • [*][*][*][/list]
  • [*][*][/list]
  • [*][/list]
  • [/list]
  • [/list]
    2 楼 spring_look 2011-12-30  
    1 楼 w123456h19 2011-12-28  
    有点不相信你是女滴? 编码有一定的深度, 肯定下了功夫的!

    相关推荐

      apache-httpclient应用所有jar

      在本文中,我们将深入探讨HttpClient的核心概念、主要功能以及如何使用它来实现网络爬虫。 **HttpClient 主要特点** 1. **异步和同步API**: HttpClient 提供了同步和异步两种API,以适应不同的应用场景。同步API...

      爬虫:httpclient+jsoup

      在IT领域,网络爬虫是一种自动化程序,用于从互联网上抓取信息,是数据分析和信息检索的重要工具。本文将详细探讨使用Java中的两种库——HttpClient和Jsoup,以及它们结合使用来构建网页爬虫的方法。 HttpClient是...

      使用HTMLPARSER和HTTPCLIENT制作网络爬虫,附赠相关技术文档。

      本教程将聚焦于如何使用HTMLPARSER和HTTPCLIENT库来构建一个基础的网络爬虫。这两个工具是Java开发者常用来解析HTML和进行HTTP请求的重要库。 首先,HTMLPARSER是一个开源的Java库,它可以解析HTML文档并提供类似于...

      httpclient 网络爬虫必备包

      本篇文章将深入探讨HttpClient库以及与其相关的HTMLParser,帮助你更好地理解和应用这些工具来构建高效的网络爬虫。 首先,HttpClient库是Apache软件基金会的一个开源项目,提供了一套全面的API,用于执行各种HTTP...

      httpclient-4.3.1.jar,httpcore-4.3.2.jar和httpmime-4.3.5.jar

      这样的组合使得开发者可以方便地编写出高效、可靠的HTTP客户端应用程序,广泛应用于网络爬虫、Web服务客户端、API调用等各种场景。 总结起来,这三个JAR文件在IT领域中主要用于Java HTTP客户端开发,通过它们可以...

      HttpClient 4.5 封装的工具类 HttpUtil 可用于爬虫和模拟登陆

      基于Apache HttpClient 4.5.2 封装的工具类 HttpUtil 可用于爬虫和模拟登陆。使用新的语法后比3.*版本的速度感觉有提升。使用后注意资源的释放 pom 部分,应该不全,需要用的根据代码的import去找maven资源即可。 ...

      使用 HttpClient 和 HtmlParser 实现简易网络爬虫

      在使用HttpClient和HtmlParser实现网络爬虫的过程中,首先需要设置开发环境。这里推荐使用Eclipse Europa作为集成开发环境(IDE),并确保安装了JDK 1.6。在Eclipse中创建一个新的JAVA工程,并将HttpClient和...

      网络爬虫所用的jar

      首先,`httpclient`是Apache HttpClient库的JAR文件,它是网络爬虫中的核心组件。HttpClient提供了一套强大的API,允许程序员创建高效的、可定制的HTTP客户端。它支持HTTP/1.1和部分HTTP/2协议,可以处理复杂的HTTP...

      自己动手写网络爬虫_附全书源码

      Java作为一种强大的后端开发语言,具有丰富的库和框架,如Jsoup和Apache HttpClient,使得编写网络爬虫变得相对容易。 Jsoup是用于处理HTML文档的Java库,它提供了一种简洁的方式来解析、查找和修改HTML内容。通过...

      Java爬虫Jsoup+httpclient获取动态生成的数据

      HttpClient是Apache提供的一个用于发送HTTP请求的客户端工具。它可以用来模拟浏览器发出网络请求,从而获取服务器返回的响应数据。在处理动态内容的网页时,HttpClient可以方便地发送带有特定头信息的请求,模拟...

      网络爬虫JAVA扩展包

      本篇文章将详细讲解标题中提到的"网络爬虫JAVA扩展包",包括其中包含的几个关键组件:`commons-httpclient-3.1.jar`、`htmllexer.jar`和`htmlparser.jar`,以及它们在网络爬虫开发中的作用。 首先,`commons-...

      一个简单的网络爬虫示例

      下面将详细讨论网络爬虫的基本原理以及HTTPClient包在爬虫中的作用。 首先,网络爬虫(Web Crawler)是通过模拟浏览器与服务器之间的通信来获取网页内容的程序。它们通常遵循一定的规则,如按照HTML链接遍历整个...

      jsoup+httpclient j简单爬虫

      **JSoup + HttpClient 简单爬虫** 在信息技术领域,数据抓取,或称“爬虫”,是一种自动化获取网页信息的技术。...这个过程可以帮助你更好地理解和掌握这两种库的使用方法,为更复杂的网络爬虫项目打下坚实的基础。

      网络爬虫文档资料

      3. Apache HttpClient:提供高级HTTP客户端功能,可实现复杂的请求设置和处理。 4. Selenium WebDriver:针对自动化Web测试,但也可用于爬虫,尤其是需要JavaScript渲染的场景。 三、爬虫流程 1. 发送请求:使用...

      org.apache.commons.httpclient资源包(4.2)

      5. **代理支持**:如果你的网络环境需要通过代理服务器访问互联网,HttpClient可以配置代理设置,包括代理主机、端口、认证等信息。 6. **HTTP/1.1协议支持**:HttpClient 4.2完全支持HTTP/1.1协议,包括持久连接、...

      网络爬虫~源码

      Java中的HttpURLConnection或Apache HttpClient库可以用来发送HTTP请求,获取服务器响应。例如,使用HttpURLConnection,你可以构建一个GET或POST请求,设置请求头,然后读取返回的HTTP响应,这包含了网页的HTML内容...

      学习网络爬虫必备,HttpClient+JSOUP

      包含jsoup-1.7.3.jar,jsoup-1.7.3-javadoc.jar,jsoup-1.7.3-sources.jar,com.springsource.org.apache.commons.httpclient-3.1.0.jar,org.apache.commons.httpclient.jar

      简易Java网络爬虫

      首先,我们需要了解Java中的网络请求库,如`HttpURLConnection`或第三方库`Apache HttpClient`,它们可以帮助我们向目标网站发送GET或POST请求。在本例中,我们将使用这些库来获取趣配音网页的HTML源代码。通过构造...

      org.apache.http相关jar包下载(httpcomponents-client-4.2.5-bin.tar)

      在标题提到的`httpcomponents-client-4.2.5-bin.tar`中,我们找到了Apache HttpClient的特定版本4.2.5的二进制分发包,它通常包含了一系列的JAR文件,用于支持网络爬虫和其他需要与HTTP服务器交互的应用程序。...

    Global site tag (gtag.js) - Google Analytics