`

java HttpURLConnection 登录网站 完整代码

阅读更多

 java httpurlconnection 登录网站 完整代码

  1. import java.io.*;   
  2. import java.util.*;   
  3. import java.net.*;   
  4.   
  5. public class WebTest {   
  6.   
  7.     public static void main(String[] args) {   
  8.   
  9.         System.out.println("beging...");   
  10.         DownLoadPages("http://login.xiaonei.com/Login.do""d:/fileDown.txt");   
  11.         // visit("http://www.xiaonei.com");   
  12.         System.out.println("end.");   
  13.     }   
  14.   
  15.     public static void DownLoadPages(String urlStr, String outPath) {   
  16.         int chByte = 0;   
  17.   
  18.         URL url = null;   
  19.   
  20.         HttpURLConnection httpConn = null;   
  21.   
  22.         InputStream in = null;   
  23.   
  24.         FileOutputStream out = null;   
  25.   
  26.         try {   
  27.             String post = "email=" + URLEncoder.encode("e-mail""UTF-8")   
  28.                     + "&password=" + "password";   
  29.             url = new URL(urlStr);   
  30.   
  31.             httpConn = (HttpURLConnection) url.openConnection();   
  32.   
  33.             //setInstanceFollowRedirects can then be used to set if    
  34.             //redirects should be followed or not and this should be used before the   
  35.             //connection is established (via getInputStream, getResponseCode, and other   
  36.             //methods that result in the connection being established).   
  37.   
  38.             httpConn.setFollowRedirects(false);   
  39.   
  40.             //inorder to disable the redirects   
  41.             httpConn.setInstanceFollowRedirects(false);   
  42.   
  43.             httpConn.setDoOutput(true);   
  44.             httpConn.setDoInput(true);   
  45.             httpConn.setRequestProperty("User-Agent",   
  46.                     "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT)");   
  47.             httpConn.setRequestProperty("Content-Type",   
  48.                     "application/x-www-form-urlencoded");   
  49.   
  50.             //ok now, we can post it   
  51.             PrintStream send = new PrintStream(httpConn.getOutputStream());   
  52.             send.print(post);   
  53.             send.close();   
  54.             URL newURL = new URL(httpConn.getHeaderField("Location"));   
  55.             System.out.println("the URL has move to "  
  56.                     + httpConn.getHeaderField("Location"));   
  57.             httpConn.disconnect();   
  58.   
  59.             //           OK, now we are ready to get the cookies out of the URLConnection      
  60.             String cookies = getCookies(httpConn);   
  61.             System.out.println(cookies);   
  62.             httpConn = (HttpURLConnection) newURL.openConnection();   
  63.             httpConn.setRequestProperty("User-Agent",   
  64.                     "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT)");   
  65.             httpConn.setRequestProperty("Content-Type",   
  66.                     "application/x-www-form-urlencoded");   
  67.             httpConn.setRequestProperty("Cookie", cookies);   
  68.   
  69.             httpConn.setDoInput(true);   
  70.             in = httpConn.getInputStream();   
  71.             out = new FileOutputStream(new File(outPath));   
  72.   
  73.             chByte = in.read();   
  74.             while (chByte != -1) {   
  75.                 out.write(chByte);   
  76.                 //System.out.println(chByte);   
  77.                 chByte = in.read();   
  78.             }   
  79.         } catch (Exception e) {   
  80.             e.printStackTrace();   
  81.         }   
  82.     }   
  83.   
  84.     public static String getCookies(HttpURLConnection conn) {   
  85.         StringBuffer cookies = new StringBuffer();   
  86.         String headName;   
  87.         for (int i = 7; (headName = conn.getHeaderField(i)) != null; i++) {   
  88.             StringTokenizer st = new StringTokenizer(headName, "; ");   
  89.             while (st.hasMoreTokens()) {   
  90.                 cookies.append(st.nextToken() + "; ");   
  91.             }   
  92.         }   
  93.         return cookies.toString();   
  94.     }   
  95. }  
分享到:
评论

相关推荐

    JAVA通过HttpURLConnection 上传和下载文件的方法

    JAVA通过HttpURLConnection上传和下载文件的方法 JAVA通过HttpURLConnection上传和下载文件的方法是非常有实用价值的,需要的朋友可以参考下。HttpURLConnection是一个Java类,用于从网络中读取数据或向网络中写入...

    HttpURLConnection文件下载\httpURLConnection文件下载

    首先,我们看到代码引入了`java.io`、`java.net`和`java.util`这三个包。`java.io`包含了输入/输出流,用于处理数据的读写;`java.net`包含了网络相关的类,如`HttpURLConnection`;`java.util`则提供了`Vector`类,...

    java后台调用HttpURLConnection类模拟浏览器请求实例(可用于接口调用)

    `HttpURLConnection`是Java标准库提供的一种轻量级的HTTP客户端,它允许我们在后台代码中发送GET和POST请求。本篇文章将深入讲解如何使用`HttpURLConnection`类来模拟浏览器请求,并通过实例展示其在接口调用中的...

    TestWebPage:Java代码基于Java HttpURLConnection类测试https代理设置

    用于基于Java HttpURLConnection类测试https代理设置的Java代码。 该代码实际上可以连接到任何URL,但仅响应https.proxyUser和https.ProxyPassword系统属性。 用法: $ java <java> -jar testwebpage.jar sherif@...

    Java HttpURLConnection使用方法详解

    Java HttpURLConnection 使用方法详解 Java HttpURLConnection 是 Java 中用于发送 HTTP 请求的类,通过使用 HttpURLConnection,可以发送 GET 请求和 POST 请求,並获取服务器的响应结果。下面是使用 Java ...

    使用HttpURLConnection下载图片

    在Java编程中,`HttpURLConnection`是用于处理HTTP协议的核心类,它提供了向网络资源发起请求并接收响应的能力。在本例中,我们将探讨如何使用`HttpURLConnection`来下载图片,这是一个基础但实用的网络编程任务。...

    Java HttpURLConnection超时和IO异常处理

    总结来说,处理`HttpURLConnection`的超时和IO异常是Java网络编程中不可或缺的部分。通过合理的超时设置、精确的异常捕获、有效的重试策略和日志记录,可以提高程序的健壮性和可靠性,确保数据的准确同步。在实际...

    Java 中HttpURLConnection附件上传的实例详解

    本文详细介绍了Java 中HttpURLConnection附件上传的实例详解,包括HttpURLConnection简介、附件上传的基本原理、使用HttpURLConnection实现附件上传的示例代码分析、HttpURLConnection附件上传的优点和缺点等。...

    JAVA实现HTTP请求

    这个是我自己集成框架的时候写的一个HTTP请求的辅助类,主要是通过HttpURLConnection 来实现JAVA的HTTP请求,有的人会问、为什么有些网站发请求没问题,有些网站发请求却返回数据,在给网站发送请求的时候,请看清楚...

    使用HttpUrlConnection实现上传文件 服务器端代码

    在Java编程环境中,当需要与Web服务器交互,例如上传文件时,`HttpURLConnection`是一个常见的选择,因为它提供了灵活且高效的方式。本篇文章将详细讲解如何使用`HttpURLConnection`实现文件上传,同时涉及到服务器...

    Java爬虫实例完整源码

    如果目标网站需要登录,可以使用HttpURLConnection设置Cookie或者使用模拟登录的方式。 此外,爬虫的效率和并发控制也很重要。Java提供了多线程机制,可以利用`java.util.concurrent`包中的工具类,如`...

    CUrl类是以命令行工具CUrl为参考使用标准Java的HttpURLConnection实现的Http工具类

    CUrl类是一个基于Java的HttpURLConnection实现的网络通信工具,其设计灵感来源于命令行工具CUrl。CUrl命令行工具广泛用于在各种协议下发送数据,包括HTTP、HTTPS、FTP等,而CUrl类则是将这种功能移植到了Java平台,...

    java访问https网址下载文件(含证书)

    在Java编程中,访问HTTPS网址并下载文件是一个常见的任务,特别是在需要安全传输敏感数据或确保数据完整性时。这里我们将深入探讨如何使用Java 1.7版本处理这一过程,包括处理SSL证书。 首先,理解HTTPS(超文本...

    远程连接服务器HttpURLConnection

    至于文件`jyWebClient`和`jyWebService`,它们可能是实现特定Web客户端或服务端功能的Java代码示例。这些文件可能包含了如何利用`HttpURLConnection`进行更复杂交互的示例,比如处理JSON响应、使用HTTPS安全连接、...

    Java剑神传说完整代码包.rar

    【Java剑神传说完整代码包】是一个集合了Java编程语言的源代码,旨在提供一个用于扩展成Android游戏的开发基础。这个代码包包含了游戏的核心逻辑、界面交互、音效处理等多个方面的实现,对于想要深入理解Java游戏...

    Java下载图片代码+教程

    ### Java下载图片代码+教程 #### 一、背景与需求 在互联网开发中,经常会遇到需要从网络上下载图片的需求。比如,在爬虫项目中抓取网页中的图片资源,或者在构建图片分享应用时需要从远程服务器下载图片显示在...

    java android httpURLConnection的封装

    在IT行业中,Java和Android平台的网络编程一直是一个重要的领域。其中,使用HTTP协议进行网络通信是一种常见且基础的需求。***包中提供了多种处理HTTP请求的类,其中HttpURLConnection是一个较为底层且灵活的网络...

    java 模拟登录(含验证码)

    首先,你需要下载并安装Tesseract,然后通过Java代码调用其API读取和解析验证码图片,得到验证码字符串。 ```java File imageFile = new File("captcha.png"); ITesseract instance = new Tesseract(); // JNA ...

    java爬虫完整代码

    综上所述,这个压缩包“java爬虫完整代码”可能包含了实现上述所有步骤的Java代码,对于学习和实践Java爬虫技术来说,是一个宝贵的学习资源。通过深入理解和运用这些知识点,可以创建出高效、稳定的网络爬虫,用于...

    链接和网站JAVA的代码

    在Java编程语言中,链接和网站的处理是一个重要的部分,特别是在构建网络应用或者进行网页爬虫等项目时。本文将深入探讨Java中处理链接和网站的相关知识点,帮助您更好地理解和运用这些技术。 首先,让我们从基础...

Global site tag (gtag.js) - Google Analytics