httpclient 模拟登陆网站 获取网站内容程序

简介: httpclient 模拟登陆网站 获取网站内容程序
package org.apache.http.examples.client;
import java.io.IOException;
import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.cookie.*;
import org.apache.commons.httpclient.methods.*;
public class FormLoginDemo {
    static final String LOGON_SITE = "www.intellitrans.com.cn";
    static final int LOGON_PORT = 8081;
    static final String loginurl = "/zyzg/logon.do";
    static final String loginparematername = "userName";
    static final String loginparematerpass = "password";
    static final String username = "wangpx";
    static final String password = "111111";
    static final String getUrl = "/zyzg/hrmsub/hrm-deptlist.do";
    public static void main(String[] args) throws Exception {
        HttpClient client = imitateLogin(LOGON_SITE, LOGON_PORT, loginurl, loginparematername, loginparematerpass, username, password);
        // 访问所需的页面
        imitateGetUrl(client, getUrl);
    }
    //模拟等录 
    private static HttpClient imitateLogin(String LOGON_SITE, int LOGON_PORT,
            String loginurl,String loginparematername,String loginparematerpass,String username,String password) throws IOException, HttpException {
        HttpClient client = new HttpClient();
        client.getHostConfiguration().setHost(LOGON_SITE, LOGON_PORT);
        // 模拟登录页面
        PostMethod post = new PostMethod(loginurl);
        NameValuePair name = new NameValuePair(loginparematername,username );
        NameValuePair pass = new NameValuePair(loginparematerpass,password );
        post.setRequestBody(new NameValuePair[] { name, pass });
        int status = client.executeMethod(post);
        System.out.println(post.getResponseBodyAsString());
        post.releaseConnection();
        // 查看cookie信息
        CookieSpec cookiespec = CookiePolicy.getDefaultSpec();
        Cookie[] cookies = cookiespec.match(LOGON_SITE, LOGON_PORT, "/", false,
                client.getState().getCookies());
        if (cookies != null)
            if (cookies.length == 0) {
                System.out.println("None");
            } else {
                for (int i = 0; i < cookies.length; i++) {
                    System.out.println(cookies[i].toString());
                }
            }
        return client;
    }
    //模拟等录 后获取所需要的页面
    private static void imitateGetUrl(HttpClient client, String getUrl)
            throws IOException, HttpException {
        PostMethod post2 = new PostMethod(getUrl);
        // GetMethod get = new
        // GetMethod("/social/article/gallery_show/p_104846/");
        client.executeMethod(post2);
        System.out.println(post2.getResponseBodyAsString());
        post2.releaseConnection();
    }
}
相关文章
|
12月前
|
Java
百度搜索:蓝易云【hutool Http 工具发送POST请求的几种方式。】
以上是使用Hutool发送POST请求的几种方式。根据实际需求和代码复杂度,选择合适的方式来发送POST请求。
300 0
|
3月前
|
网络协议 前端开发 JavaScript
浏览器加载网页的幕后之旅:从URL到页面展示详解
【8月更文挑战第31天】当在浏览器地址栏输入URL并回车后,一系列复杂过程随即启动,包括DNS解析、TCP连接建立、HTTP请求发送、服务器请求处理及响应返回,最后是浏览器页面渲染。这一流程涉及网络通信、服务器处理和客户端渲染等多个环节。通过示例代码,本文详细解释了每个步骤,帮助读者深入理解Web应用程序的工作机制,从而在开发过程中作出更优决策。
50 5
|
6月前
|
数据采集 C# 数据安全/隐私保护
掌握 C# 爬虫技术:使用 HttpClient 获取今日头条内容
本文介绍了如何使用C#的HttpClient与爬虫代理IP技术抓取今日头条内容,以实现高效的数据采集。通过结合亿牛云爬虫代理,可以绕过IP限制,增强匿名性。文中提供了一个代码示例,展示如何设置代理服务器信息、请求头,并用正则表达式提取热点新闻标题。利用多线程技术,能提升爬虫采集效率,为市场分析等应用提供支持。
143 1
掌握 C# 爬虫技术:使用 HttpClient 获取今日头条内容
|
Java 数据安全/隐私保护
模拟登陆系统
模拟登陆系统
115 0
|
缓存 前端开发 JavaScript
YII2.0网站如何减少网站首页的HTTP请求?底层原理是什么?
YII2.0网站如何减少网站首页的HTTP请求?底层原理是什么?
|
数据采集 JSON JavaScript
新浪短网址接口源码,并使用PHP模拟登陆来自动更新
新浪短网址接口源码,并使用PHP模拟登陆来自动更新
152 0
|
Web App开发 XML JSON
Crawler:基于requests库+urllib3库+伪装浏览器实现爬取抖音账号的信息数据
Crawler:基于requests库+urllib3库+伪装浏览器实现爬取抖音账号的信息数据
|
Java Apache
使用HttpClient抓取页面内容
HttpClient抓取页面内容,使用HttpClient工具来发送Http请求 1.简介HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。
907 0
7、web爬虫讲解2—urllib库爬虫—状态吗—异常处理—浏览器伪装技术、设置用户代理
如果爬虫没有异常处理,那么爬行中一旦出现错误,程序将崩溃停止工作,有异常处理即使出现错误也能继续执行下去 1.
1398 0
|
机器学习/深度学习 Web App开发 JavaScript
使用ApiPost测试接口时需要先登录怎么办?利用Cookie模拟登陆!
在后台在开发、调试接口时,常常会遇到需要登陆才能请求的接口。本文主要介绍利用ApiPost发送Cookie,使服务器识别已登录用户的Cookie。

相关实验场景

更多