从Java将数据发布到网站

实践2完美

我需要从网站中提取考试结果,我的程序应在网页上输入注册号,并应读取生成的网页...我尝试了一些操作..但是我的程序返回了我输入注册号的相同网页。下面是我的代码..请帮助我整理一下..

 package javaapplication3;

 import java.io.BufferedReader;
 import java.io.InputStreamReader;
 import java.io.OutputStreamWriter;
 import java.net.URL;
 import java.net.URLConnection;
 import java.net.URLEncoder;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;


 public class JavaApplication3 {

/**
 * @param url
 * @param params
 * @return 
 */

 public void post(String url, Map<String, String> params) {

    //Check if Valid URL
    if(!url.toLowerCase().contains("http://")) {
        System.out.println("not valid link");
    }

    StringBuilder bldr = new StringBuilder();

    try {
        //Build the post data
        StringBuilder post_data = new StringBuilder();

        //Build the posting variables from the map given
        for (Iterator iter = params.entrySet().iterator(); iter.hasNext();) {
            Map.Entry entry = (Map.Entry) iter.next();
            String key = (String) entry.getKey();
            String value = (String)entry.getValue();

            if(key.length() > 0 && value.length() > 0) {

                if(post_data.length() > 0) post_data.append("&");

                post_data.append(URLEncoder.encode(key, "UTF-8"));
                post_data.append("=");
                post_data.append(URLEncoder.encode(value, "UTF-8"));
            }
        }

        // Send data
        URL remote_url = new URL(url);
        URLConnection conn = remote_url.openConnection();
        conn.setDoOutput(true);
        OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
        wr.write(post_data.toString());
        wr.flush();

        // Get the response
        BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String inputLine;
        while ((inputLine = rd.readLine()) != null) {
            bldr.append(inputLine);
            System.out.println(inputLine);
        }
        wr.close();
        rd.close();
    } catch (Exception e) {
        //Handle Error
        e.printStackTrace();
    }


}
public static void main(String[] args) {
    // TODO code application logic here
    JavaApplication3 ja=new JavaApplication3();
     Map<String, String> params = new HashMap<String, String>();
    params.put("regno", "11210104001");

     ja.post("http://www.annauniv.edu/1234566789/cgrade.html", params);

}

}
萨布吉·哈桑(Sabuj Hasan)

您使用了错误的POST网址。用这个:

ja.post("http://www.annauniv.edu/cgi-bin/result/cgrade.pl", params);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将数据从Arduino发布到网站

来自分类Dev

将数据从Arduino发布到网站

来自分类Dev

使用cookie和viewState将数据发布到网站

来自分类Dev

使用cookie和viewState将数据发布到网站

来自分类Dev

如何使用curl将数据发布到该网站?

来自分类Dev

将数据从Android应用发布到网站中的问题

来自分类Dev

Vertx:将数据从html发布到Java

来自分类Dev

Vertx:将数据从html发布到Java

来自分类Dev

将网站发布到本地IIS 7.5

来自分类Dev

通过网站将图像发布到instagram

来自分类Dev

当我将JSON数据发布到Wordpress网站时出错

来自分类Dev

将数据从Android应用发布到网站中的android.os.NetworkOnMainThreadException

来自分类Dev

将数据从Android应用发布到PHP网站时出现问题

来自分类Dev

将表单数据从第三方网站发布到 Django

来自分类Dev

将数据发布到php

来自分类Dev

将非拉丁数据从Java发布到PHP

来自分类Dev

如何使用Visual Studio 2013将具有sql本地db数据库的网站发布到Azure

来自分类Dev

如何使用Visual Studio 2013将具有sql本地db数据库的网站发布到Azure

来自分类Dev

如何授予将网站发布到Azure的权限?

来自分类Dev

无法将.SVG文件发布到Azure网站

来自分类Dev

将脚手架网站发布到蔚蓝

来自分类Dev

将视频发布到html网站的最佳方法

来自分类Dev

将元数据发布到Service Fabric

来自分类Dev

将Ember数据发布到Web API

来自分类Dev

jQuery将数据发布到div

来自分类Dev

从Flutter将数据发布到API

来自分类Dev

将数据发布到PHP API

来自分类Dev

将数据发布到弹出窗口

来自分类Dev

将数据从ember js发布到python