有许多的情况我们都需要自己查看一个网页,并且执行这个网页上的某个方法,比如百度的搜索,http://www.baidu.com/s?wd=google&n=2,你可以直接在地址栏中输入,也可以通过Java程序来执行这个过程:
写个示例:
public static void main(String[] args) throws Exception{
HttpClient client = new HttpClient();
client.getHostConfiguration().setHost(new HttpHost(new URI("")));//主机设置,写的是http://www.baidu.com
HttpMethod method = null;
byte[] responseBody = null;
try {
method = getPostMethod("");//设置请求URL,可以是http://www.baidu.com
client.executeMethod(method);
responseBody = method.getResponseBody();
} catch (HttpException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
method.releaseConnection();
}
System.out.println(new String(responseBody,"GBK"));
}
private static HttpMethod getPostMethod(String url){
PostMethod post = new PostMethod("/s");
NameValuePair[] values = {new NameValuePair("wd","google"),new NameValuePair("n","2")};//设置请求参数
post.setRequestBody(values);
//都是通过key和value的关系设置值
post.setRequestHeader("Host", "");
post.setRequestHeader("User-Agent","Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; .NET4.0C; .NET4.0E)");
post.setRequestHeader("Accept","image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*");
post.setRequestHeader("Accept-Language", "zh-CN");
post.setRequestHeader("Accept-Encoding", "gzip,deflate");
post.setRequestHeader("Referer","");
post.setRequestHeader("Cookie", "");
post.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
return post;
}
这个过程主要的是设置请求的参数,比如说请求头和请求体,并且通过client.executeMethod的方法来执行,并且返回服务器响应的信息,可以从中提取你所需要的信息。
分享到:
相关推荐
在上面的示例代码中,我们首先创建了一个HttpClient实例,然后设置了要访问的URL,接着创建了一个GetMethod对象,并执行了GET请求。最后,我们读取了服务器返回的响应结果,并将其输出到控制台。 在下面的章节中,...
HttpClient 4.2.5是HttpClient的一个稳定版本,它引入了许多改进和修复,提高了性能和稳定性。同时,HttpClient依赖于HttpCore库,这是Apache提供的基础HTTP协议处理组件,httpcore-4.4.1.jar即为该组件的4.4.1版本...
Apache HttpClient是一个强大的HTTP客户端实现库,主要用于构建Java应用程序,以实现对HTTP协议的全面、灵活且高效的处理。在这个专题中,我们将深入探讨Apache HttpClient 3.1的核心特性,以及如何在实际项目中有效...
Apache Commons HttpClient 是一个Java库,专门用于执行HTTP客户端请求。这个库为开发者提供了一套全面且功能强大的API,使得在Java应用程序中与HTTP服务器进行交互变得更加简单。在Java项目中,如果你需要发送GET、...
本文将详细介绍如何使用HttpClient来调用WebService接口,并提供一个具体的示例代码来进行解析。 #### 二、HttpClient简介 HttpClient是Apache的一个开源项目,它提供了一套丰富的API用于发送HTTP请求和接收HTTP...
下面是一个简单的示例代码,用于演示如何使用HttpClient获取网页内容: ```java package http.demo; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.GetMethod;...
- **GetMethod**:用于执行GET请求的方法,是 HttpClient 中的一个类。 - **RetryHandler**:处理请求失败时的重试逻辑,默认情况下 HttpClient 会自动重试一定次数。 - **HTTP状态码**:用来表示请求的状态,如200...
HttpClient是Apache基金会开发的一个Java库,用于执行HTTP请求。它为开发者提供了强大的功能,可以方便地构建复杂的HTTP操作,如GET、POST、PUT等。在Java应用中,HttpClient经常被用作与Web服务器进行交互的工具,...
HttpClient 是一个开源的Java库,由Apache软件基金会维护,主要用于执行HTTP请求。这个CHM(Compiled Help Manual)版本的JavaDoc文档是HttpClient 3.1版本的官方API参考,它包含了详尽的类、接口和方法的说明,为...
HTTPClient是Java编程中用于执行HTTP请求的一个库,它提供了丰富的功能来处理网络通信,包括GET、POST等HTTP方法,支持HTTPS,以及自定义请求头、Cookie管理等。这个压缩包包含了几个重要的JAR文件,它们是...
Apache Commons HttpClient 2.0 是一个历史悠久的Java HTTP客户端库,专为实现高效、灵活且可定制的HTTP通信而设计。在许多旧版系统或特定项目中,由于兼容性问题或者特定需求,仍然可能需要使用这个版本。在这个库...
HttpClient是Apache基金会开发的一个HTTP客户端库,用于在Java应用程序中执行HTTP请求。它提供了丰富的功能,包括支持HTTP/1.1协议、连接管理、重定向处理、Cookie管理、身份认证等,使得开发者能够方便地与Web...
HttpClient是Apache基金会开发的一个Java库,用于执行HTTP请求。它为开发者提供了强大的功能,可以方便地实现HTTP协议的各种操作,包括GET、POST、PUT、DELETE等HTTP方法,以及处理cookies、重定向、认证等问题。在...
Apache Commons HttpClient 是一个高度可定制的HTTP客户端实现,支持从简单的GET请求到复杂的POST操作,包括文件上传、Cookie管理、重定向处理、HTTP认证等。它提供了一个强大的API,使得开发者能够轻松地创建、发送...
Apache Commons HttpClient是一个Java库,专门用于执行HTTP请求。它是Apache软件基金会的一个子项目,为Java开发者提供了一套强大且灵活的API,以便于处理HTTP客户端编程任务。在"org.apache.commons.httpclient"这...
需要注意的是,虽然`commons-httpclient`是一个成熟的库,但随着Java生态系统的发展,现在更推荐使用Java 7及更高版本内置的`java.net.HttpURLConnection`或者现代化的HTTP客户端库,如Apache HttpClient的最新版...
以下是一个使用HttpClient简单读取网页内容的例子: ```java import java.io.IOException; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.GetMethod; public ...
Apache HttpClient是一个开源项目,最初由Jakarta项目维护,现归于Apache HttpComponents项目。它提供了一组用于执行HTTP请求的API,支持HTTP/1.0和HTTP/1.1协议,包括基本的GET、POST等方法,以及更复杂的HTTP操作...
HttpClient是一个由Apache基金会开发的Java库,主要用于执行HTTP请求,实现客户端的HTTP通信。本手册将详细探讨HttpClient 3.1版本,包括其源代码分析和使用指南,帮助开发者充分利用这个强大的工具。 一、...