Java语言使用HttpClient模拟浏览器登录

使用HttpClient来模拟浏览器登录网站,然后可以进行操作,比如发布信息等

第一步:获取实际的post网址,(不考虑复杂情况下)

1、需要使用到firefox的httpfox插件,httpfox中clear一下,然后start开始捕获

2、切换回网页的登录页面,开始输入自己的账号密码登录,登录成功后切回httpfox中stop,查看最近的post方法中包含的Post Data数据,和此post方法的url网址,

3、这样就得到了模拟登录时需要Post的数据参数(Parameter)和值(Value),以及实际Post的网址URL

第二步,使用HttpClient来登录

1、简单核心代码如下

CloseableHttpClient httpclient = HttpClients.createDefault();
        List<NameValuePair> postData = new ArrayList<NameValuePair>();
        //这里可能有多个参数
        postData.add(new BasicNameValuePair("username", "username"));
        postData.add(new BasicNameValuePair("password", "password"));
        //URL是实际的post地址,使用httpFox得到
        HttpPost httppost = new HttpPost(URL); 9        try {11                httppost.setEntity(new UrlEncodedFormEntity(postData, "GBK"));
                response = httpclient.execute(httppost);
        } catch (IOException e) {
        } finally {
            closeIO(response);
        }

相关推荐