2014-01-22 51 views
-1

我想要自动登录到一个Java exe文件的表单,这将允许我遵循一个href链接,该链接将重定向到另一个网站,有一个登录名,然后我将提供凭证,然后下载页面内容,然后在页面中输入详细信息并提交。登录到这是一个超链接的链接href

这听起来对Java编码来说是一个很高的顺序吗?通常这个过程是由操作员完成的,但我需要自动化。

回答

1

1.-准备一个像HttpFox Firefox附加组件或Whireshark的Sniffer。

2.-在网站上登录并获取登录名,方法(GET或POST)的URL以及用户名和密码的参数名称(您也可以从登录页面的源代码中获取该名称) 。

3.-导航到该网站并取消会话cookie的名称(或来自所有cookie)。

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.net.MalformedURLException; 
import java.net.URL; 

import javax.net.ssl.HttpsURLConnection; 


public class Tests { 

    public static String cookie; 

    public static void main(String[] args) throws MalformedURLException, IOException { 

     URL url = new URL("https://some_site..."); 
     HttpsURLConnection https = (HttpsURLConnection) url.openConnection(); 
     https.setRequestMethod("POST"); //or GET 
     https.addRequestProperty("usename_field_name", "username"); 
     https.addRequestProperty("password_field_name", "password"); 
     https.addRequestProperty("Cookie", cookie); 

     BufferedReader in = new BufferedReader(new InputStreamReader(https.getInputStream())); 

     String linea; 

     while ((linea = in.readLine()) != null) { 
      // Recover the cookie and save it in a variable. 
      // You must put it in other connections. 
     } 
    } 
}