概述
Java访问网络,模拟登陆,进入网站内部(使用HttpClient),jar包在下面可以直接下载
import org.apache.commons.httpclient.Cookie;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.cookie.CookiePolicy;
import org.apache.commons.httpclient.cookie.CookieSpec;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.methods.PostMethod;
public class Link {
static final String LOGON_SITE = “localhost” ;//主机地址
static final int LOGON_PORT = 18181;//端口号
public static void main(String[] args) throws Exception{
HttpClient client = new HttpClient();//打开新窗口
client.getHostConfiguration().setHost(LOGON_SITE, LOGON_PORT);//配置
// 模拟手动登录页面,home是处理登陆的antion
PostMethod post = new PostMethod( “/home” );
NameValuePair username = new NameValuePair( “username” , “admin” );
NameValuePair pass = new NameValuePair( “password” , “admin” );
post.setRequestBody( new NameValuePair[]{username,pass});
int status = client.executeMethod(post);
post.releaseConnection();
// 查看 cookie,并传递Cookies到服务器认证
CookieSpec cookiespec = CookiePolicy.getDefaultSpec();
Cookie[] cookies = cookiespec.match(LOGON_SITE, LOGON_PORT, “/” , false , client.getState().getCookies());
if (cookies.length == 0) {
System.out.println( “没有Cookies” );
} else {
for ( int i = 0; i < cookies.length; i++) {
System.out.println(“Cookies:”+cookies[i].toString());
}
}
// 因为前面已经登陆了,也加入了Cookies,所以才可以直接访问这个地址,这个才是需要访问的真正antion
GetMethod get=new GetMethod(“/corpcode/renzheng?Corpcode=C10147&Code=1231”);
client.executeMethod(get);
System.out.println(“Get请求:”+get.getResponseBodyAsString());
get.releaseConnection();
}
}
jar包下载 lib
最后
以上就是文静睫毛为你收集整理的java 模拟登陆_Java访问网络,模拟登陆,进入网站内部(使用HttpClient)的全部内容,希望文章能够帮你解决java 模拟登陆_Java访问网络,模拟登陆,进入网站内部(使用HttpClient)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复