求助,使用C#自动登录网站获取信息遇到个问题,请高手帮忙看一下代码
各位高手帮个忙,刚学习使用HTTPREQUEST来登录网站获取信息,现在拿盛大通行证做了个测试,遇到了一个问题。
我想登录账号获得账号的可用积分余额,可登录成功了,在获取下一个页面信息的时候出错了,附上代码如下,请高手指点一下。
盛大通行证登录地址 http://www.sdo.com/loginPT.asp
private CookieContainer myCookieContainer;
private Encoding charset = Encoding.GetEncoding("GB2312");
private string HTTPGET(string url)
{
string outdata;
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
myHttpWebRequest.CookieContainer = myCookieContainer;
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
myHttpWebResponse.Cookies = myCookieContainer.GetCookies(myHttpWebRequest.RequestUri);
Stream myResponseStream = myHttpWebResponse.GetResponseStream();
StreamReader myStreamReader = new StreamReader(myResponseStream, charset);
outdata = myStreamReader.ReadToEnd();
myStreamReader.Close();
myResponseStream.Close();
return outdata;
}
private string HTTPPOST(string url, string postData)
{
string outdata;
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded";
myHttpWebRequest.ContentLength = postData.Length;
myHttpWebRequest.Method = "POST";
myHttpWebRequest.CookieContainer = myCookieContainer;
Stream myRequestStream = myHttpWebRequest.GetRequestStream();
StreamWriter myStreamWriter = new StreamWriter(myRequestStream, Encoding.Default);
myStreamWriter.Write(postData);
myStreamWriter.Close();
myRequestStream.Close();
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
myHttpWebResponse.Cookies = myCookieContainer.GetCookies(myHttpWebRequest.RequestUri);
Stream myResponseStream = myHttpWebResponse.GetResponseStream();
StreamReader myStreamReader = new StreamReader(myResponseStream, charset);
outdata = myStreamReader.ReadToEnd();
myStreamReader.Close();
myResponseStream.Close();
return outdata;
}
private void btnStart_Click(object sender, EventArgs e)
{
string strHTML = string.Empty;
//登录
myCookieContainer = new CookieContainer();
string loginUrl = "http://dplogin.sdo.com/dispatchlogin.fcgi?service=http%3A%2F%2Fjf%2Esdo%2Ecom%2FRedirectPage%2Easpx%3Ftarget%3DUserHouse%2FQueryScore%2Easpx";
string loginPost = "warn=false<=test&_eventId=submit&idtype=0&gamearea=0&gametype=0&username={0}&password={1}&ekey=&challenge=&domaink=jf.sdo