日期:2014-05-17  浏览次数:20836 次

C# 模拟登录(带验证码),求助啊!高手们请赐教 :(
小弟刚入门,想写个HttpWebRequest类型的自动登录工具,然后获取网页的内容,但是搞了一个星期都不行,高手们能不能帮下忙看看是错在哪呢?

网站登录页:http://laishangdai.com/member/common/login/
网站验证码连接:http://laishangdai.com/Member/common/verify?t=0.49116053992461844

抓包后真实地址是:http://laishangdai.com/Member/common/actlogin/

我具体的方法是:
(1)先用HttpWebRequest打开网站,保存好cookies
(2)然后再附带上cookies获取验证码
(3)最后是带上cookies、验证码、postData发送后登录

但是怎么也登录不成功,只返回“{"status":0,"message":"\u9a8c\u8bc1\u7801\u9519\u8bef!"}” 这种信息,郁闷呀。。。。

带上函数:

        public static string GetCookiesHasCode(string strLoginURL, string strRefererURL, string strHttpLogin, string encodingcode, string cookieHeader)
        {
            ASCIIEncoding encoding = new ASCIIEncoding();
            byte[] data = encoding.GetBytes(strHttpLogin);//一定要经过encoding才能发送
            try
            {
                // Prepare web request...   
                HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(strLoginURL);
                myRequest.Method = "POST";
                myRequest.Proxy = null;
                myRequest.Timeout = 500;
                myRequest.ContentType = "application/x-www-form-urlencoded";
                myRequest.ContentLength = data.Length;
                myRequest.Referer = strRefererURL;
                myRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; .NET CLR 2.0.50727)";
                myRequest.KeepAlive = true;
                myRequest.AllowAutoRedirect = true;
                myRequest.Accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/msword, application/x-shockwave-flash, */*";
                myRequest.Headers.Add("cookie:" + cookieHeader);
                CookieContainer myCookieContainer = new CookieContainer();
                myRequest.CookieContainer = myCookieContainer;