trace1985 发表于 2013-1-15 02:34:16

Code

测试一下发代码
import java.io.*;   import java.net.*;   public class shuapiao {       String myurl="";//投票填写的url       String sub_gdly="http://";//投票处理的url       String session_id="";       String id="";       String proxyAddr="82.205.237.26";       int proxyPost=8080;       //HttpURLConnection conn = (HttpURLConnection)url.openConnection();       public shuapiao(String myurl){         this.myurl=myurl;       }       public String getUrl(){         String valid="";         try {               InputStream   in;               Proxy proxy=new Proxy(java.net.Proxy.Type.HTTP,new InetSocketAddress   (this.proxyAddr,this.proxyPost));               URL url=new URL(myurl);               HttpURLConnection conn = (HttpURLConnection)url.openConnection();//代理总连接不上,所以没用               //int size = conn.getHeaderFields().size();               conn.setDoOutput(true);               conn.setRequestMethod("GET");               conn.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");               conn.setRequestProperty("host","www");//主机地址               conn.setRequestProperty("Connection","keep-alive");//长连接,这个很好用!               //HttpURLConnection connection = (HttpURLConnection)url.openConnection();               conn.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");               conn.connect();                  in = conn.getInputStream();               java.io.BufferedReader breader =                     new BufferedReader(new InputStreamReader(in , "GBK"));               String str=breader.readLine();               while(str != null){                   System.out.println(str);                   if(str.indexOf("验证码:<input type=\"text\" name=\"verifycode\" size=\"4\" /><font color=   \"#0000FF\" face=\"Georgia, Times New Roman, Times, serif\" size=\"3\"><i><b>")>-1){                     valid=str.substring(str.indexOf("<b>")+3, str.indexOf("</b>"));                   }                  str=breader.readLine();               }               String cookieval = conn.getHeaderField("set-cookie");               System.out.println(cookieval);               String sessionid=null;               if(cookieval != null){                     sessionid=cookieval.substring(0,cookieval.indexOf(";"));                                    }               System.out.println(sessionid);               this.session_id=sessionid+"&path=/";               in.close();                                       } catch (IOException e) {               // TODO Auto-generated catch block               e.printStackTrace();         }         return valid;       }       public void postURL(){         try {               Proxy proxy=new Proxy(java.net.Proxy.Type.HTTP,new InetSocketAddress   (this.proxyAddr,this.proxyPost));               URL url=new URL(sub_gdly);               HttpURLConnection conn = (HttpURLConnection)url.openConnection();               conn.setDoOutput(true);               conn.setRequestMethod("POST");               conn.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");               conn.setRequestProperty("host","www.163.com");               conn.setRequestProperty("Connection","keep-alive");               conn.setRequestProperty("cookie", session_id.substring(0,session_id.indexOf("&")));               StringBuffer sb=new StringBuffer();                              sb.append   ("name=01&name=10&name=02&name=03&name=04&name=05&name=06&name=24&name=07&name=08&name1=hhhf&sex=   %C4%D0&tele=111111111&comp=111111&addr=11111&postcode=010000&verifycode=" +                     this.id+"&B1=%CC%E1%BD%BB");               System.out.println(sb.toString());               OutputStream os=conn.getOutputStream();               os.write(sb.toString().getBytes("GBK"));               os.close();               BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));               conn.connect();               String line = br.readLine();               while(line != null){                   System.out.println(line);                   line = br.readLine();               }         } catch (MalformedURLException e) {               // TODO Auto-generated catch block               e.printStackTrace();         } catch (IOException e) {               // TODO Auto-generated catch block               e.printStackTrace();         }       }            public static void main(String args[]){         for(int i=0;i<10;i++){         shuapiao u=new shuapiao("http://");         u.id=u.getUrl();         u.postURL();       }       }   } 
页: [1]
查看完整版本: Code