模拟自动向网页Post信息并都接受信息进行处理---C#实现
2012-09-17 20:12 ATP_ 阅读(381) 评论(0) 收藏 举报 class Post
{
/// <summary>
/// 向目标网页发送数据
/// </summary>
/// <param name="url">目标页</param>
/// <param name="postData">数据</param>
/// <param name="encodeType">编码格式</param>
/// <param name="err">错误信息</param>
/// <returns>string 字符串型返回值</returns>
public string getPage(string url, string postData, string encodeType, 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);
string rt_str = null;
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();
rt_str = getCode(postData, content);
// err = string.Empty;
return rt_str;
}
catch (Exception ex)
{
err = ex.Message;
return string.Empty;
}
}
virtual public string getCode(string data, string str)
{
if (str.IndexOf("window.alert") != -1)
{
return "N";
}
else
return data;
}
}
给梦想一点时间
浙公网安备 33010602011771号