明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

使用HttpWebRequest向網(wǎng)站模擬上傳數(shù)據(jù)

[摘要]最近有個朋友離開IT行業(yè)二年的朋友說要實現(xiàn)用程序向某個網(wǎng)站的頁面上傳數(shù)據(jù),他是意思是每天有幾十條數(shù)據(jù)要在網(wǎng)站頁面上填寫,很煩,最好用程序來寫。網(wǎng)站頁面是用POST傳遞的,同時沒有驗證碼之類的東東,只有一點限制就是5分種內(nèi)不能填寫二次記錄。這一切都好辦。using System.Web;using ...

最近有個朋友離開IT行業(yè)二年的朋友說要實現(xiàn)用程序向某個網(wǎng)站的頁面上傳數(shù)據(jù),他是意思是每天有幾十條數(shù)據(jù)要在網(wǎng)站頁面上填寫,很煩,最好用程序來寫。網(wǎng)站頁面是用POST傳遞的,同時沒有驗證碼之類的東東,只有一點限制就是5分種內(nèi)不能填寫二次記錄。這一切都好辦。

using System.Web;
using System.Net;
using System.Text;
using System.IO;

//創(chuàng)建對某個網(wǎng)站頁面的請求

HttpWebRequest  myRequest = (HttpWebRequest )WebRequest.Create("http://www.knowsky.com/a.asp")

//上傳的數(shù)據(jù),”TextBox1“這些東東是網(wǎng)站頁面里的控件ID,如果要上傳多個值也是用&來分隔

   string postData="TextBox1="+this.textBox1.Text+"&TextBox2="+this.textBox2.Text+"
&TextBox3="+this.textBox3.Text+"&TextBox4="+this.textBox4.Text;
   ASCIIEncoding encoding=new ASCIIEncoding();
   byte[]  byte1=encoding.GetBytes(postData);//最終編碼后要上傳的數(shù)據(jù)
   // Set the content type of the data being posted.
   myRequest.ContentType="application/x-www-form-urlencoded";
   myRequest.Method="post";//post上傳方式
   // Set the content length of the string being posted.
   myRequest.ContentLength=postData.Length;
   Stream newStream=myRequest.GetRequestStream();
   newStream.Write(byte1,0,byte1.Length);


一切就OK了,如果你想上傳后看到網(wǎng)站的內(nèi)容的話,可以在程序里放一個IE控件,使用

axWebBrowser1.Navigate("http://www.knowsky.com/a.asp");
axWebBrowser1.Refresh2();