用post方法从网上抓取信息
点击次数:16 次 发布日期:2008-11-26 11:35:11 作者:源代码网
|
源代码网推荐 源代码网推荐 using System.Net; 源代码网推荐 源代码网推荐 static string WebClinetPost(string url, string postData,string encodeType,out string err) 源代码网推荐 { 源代码网推荐 string uriString = url; 源代码网推荐 byte[] byteArray; 源代码网推荐 byte[] responseArray; 源代码网推荐 //postData = "checkvalue=32&bbb=%CD%B6%C6%B1&ilc=0&kkk=22"; 源代码网推荐 Encoding encoding = Encoding.GetEncoding(encodeType); 源代码网推荐 try 源代码网推荐 { 源代码网推荐 WebClient myWebClient = new WebClient(); 源代码网推荐 WebHeaderCollection myWebHeaderCollection; 源代码网推荐 myWebClient.Headers.Add("Content-Type","application/x-www-form-urlencoded"); 源代码网推荐 //myWebClient.Headers.Add("Referer","http://xxxxx/xxxxxxxxxxxxxxxxxxxxxxxx"); 源代码网推荐 //myWebClient.Headers.Add("Accept-Language","zh-cn"); 源代码网推荐 myWebHeaderCollection = myWebClient.Headers; 源代码网推荐 源代码网推荐 byteArray = encoding.GetBytes(postData); 源代码网推荐 responseArray = myWebClient.UploadData(uriString,"POST",byteArray); 源代码网推荐 源代码网推荐 err=string.Empty; 源代码网推荐 return encoding.GetString(responseArray); 源代码网推荐 } 源代码网推荐 catch(Exception ex) 源代码网推荐 { 源代码网推荐 err=ex.Message; 源代码网推荐 return string.Empty; 源代码网推荐 } 源代码网推荐 } 源代码网推荐 public static string HttpWebResponsePost(string url, string postData,string encodeType,out string err) 源代码网推荐 { 源代码网推荐 源代码网推荐 Stream outstream = null; 源代码网推荐 源代码网推荐 Stream instream = null; 源代码网推荐 源代码网推荐 StreamReader sr = null; 源代码网推荐 源代码网推荐 HttpWebResponse response = null; 源代码网推荐 源代码网推荐 HttpWebRequest request = null; 源代码网推荐 源代码网推荐 Encoding encoding = Encoding.GetEncoding(encodeType); 源代码网推荐 源代码网推荐 byte[] data = encoding.GetBytes(postData); 源代码网推荐 源代码网推荐 try 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 request = WebRequest.Create(url) as HttpWebRequest; 源代码网推荐 源代码网推荐 CookieContainer cookieContainer = new CookieContainer(); 源代码网推荐 源代码网推荐 request.CookieContainer = cookieContainer; 源代码网推荐 源代码网推荐 request.AllowAutoRedirect = true; 源代码网推荐 源代码网推荐 request.Method = "POST"; 源代码网推荐 源代码网推荐 request.ContentType = "application/x-www-form-urlencoded"; 源代码网推荐 源代码网推荐 request.ContentLength = data.Length; 源代码网推荐 源代码网推荐 outstream = request.GetRequestStream(); 源代码网推荐 源代码网推荐 outstream.Write(data,0,data.Length); 源代码网推荐 源代码网推荐 outstream.Close(); 源代码网推荐 源代码网推荐 response = request.GetResponse() as HttpWebResponse; 源代码网推荐 instream = response.GetResponseStream(); 源代码网推荐 sr = new StreamReader( instream, encoding ); 源代码网推荐 string content = sr.ReadToEnd(); 源代码网推荐 源代码网推荐 err = string.Empty; 源代码网推荐 return content; 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 catch(Exception ex) 源代码网推荐 { 源代码网推荐 源代码网推荐 err = ex.Message; 源代码网推荐 return string.Empty; 源代码网推荐 源代码网推荐 } 源代码网推荐 } 源代码网推荐 源代码网推荐 调用代码: 源代码网推荐 string url="http://xxxxxx/xxxxxxxx/scrrm00542.jsp"; 源代码网推荐 string postData="proj_id=600197&theSubmit=600197"; 源代码网推荐 string encodeType="utf-8"; 源代码网推荐 string err=""; 源代码网推荐 //string content=HttpWebResponsePost(url,postData,encodeType,out err); 源代码网推荐 string content=WebClinetPost(url,postData,encodeType,out err); 源代码网推荐 源代码网推荐 另外,再附上javascript实现的代码吧: 源代码网推荐 <script language=javascript> 源代码网推荐 function GetData() 源代码网推荐 { 源代码网推荐 源代码网推荐 var postData = "proj_id=600197&theSubmit=600197"; 源代码网推荐 var http = new GetXMLHTTPRequest(); 源代码网推荐 http.open("POST", "http://xxxxxxxxxx/xxxxxx/scrrm00542.jsp", false); 源代码网推荐 http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 源代码网推荐 http.send(postData); 源代码网推荐 源代码网推荐 return http.responseText; 源代码网推荐 } 源代码网推荐 源代码网推荐 function GetXMLHTTPRequest() 源代码网推荐 { 源代码网推荐 var progIDs = ["Msxml2.XMLHTTP.5.0", "Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"]; 源代码网推荐 for (var i = 0; i < progIDs.length; ++i) 源代码网推荐 { 源代码网推荐 var progID = progIDs[i]; 源代码网推荐 try 源代码网推荐 { 源代码网推荐 var x = new ActiveXObject(progID); 源代码网推荐 return x; 源代码网推荐 } 源代码网推荐 catch (e) 源代码网推荐 {} 源代码网推荐 } 源代码网推荐 } 源代码网推荐 </script> 源代码网推荐 源代码网推荐 http://www.cnblogs.com/lwyaster/archive/2007/01/09/615815.html 源代码网推荐 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
