例如,我要登录时光网的一个游戏。入口是:http://my.mtime.com/app/card/。
在没有登录时光网的账户下它将自动跳转到其注册登录界面。我用程序webBrowser实现了网站的自动登录。并且进入其游戏界面,但我要抓取其
界面信息时发现抓取的还是注册登录界面的信息。webBrowser.Ur1=.....注册登录界面的地址
自动输入:账号,密码后主动登录游戏界面.
我要的就是抓取这个游戏界面的网页信息代码如下:
        private void btn_record_Click(object sender, EventArgs e)//抓取网页信息按键事件
        {
            //要抓取的URL地址 
            //string Ur = "http://my.mtime.com/app/card/";
            string Ur = webBrowser.Ur1.ToString();
           
            //得到指定Url的源码的方法
            string strWebContent= GetWebContent(Ur);            ***********************************
        }
        //根据Url地址得到网页的html源码 
        private string GetWebContent(string Url)
        {
            string strResult = "";
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
                //声明一个HttpWebRequest请求 
                request.Timeout = 30000;
                //设置连接超时时间 
                request.Headers.Set("Pragma", "no-cache");
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream streamReceive = response.GetResponseStream();
                Encoding encoding = Encoding.GetEncoding("UTF-8");
                StreamReader streamReader = new StreamReader(streamReceive, encoding);
                strResult = streamReader.ReadToEnd();
            }
            catch
            {
                MessageBox.Show("出错");
            }
            return strResult;
        } 
上面字符串strWebContent信息是登录界面的信息而不是我需要的游戏界面的信息。不知道问题出在哪里?

解决方案 »

  1.   

    我在抓取信息前,查看了webBrowser的Ur1已经在是游戏界面的有效地址了,并且可以玩游戏了。
    这样后应该算登录成功了吧。
    我再下个抓包工具看看怎样。
    谢谢
      

  2.   

    我在抓取信息前,查看了webBrowser的Ur1已经在是游戏界面的有效地址了,并且可以玩游戏了。
    这样后应该算登录成功了吧。
    我再下个抓包工具看看怎样。
    谢谢
      

  3.   

    抓包工具推荐fiddler,或是用ff的firebug也行
      

  4.   

    一会儿是WebBrowser,一会儿又整成HttpWebRequest“抓取”?
      

  5.   

    估计登录界面和游戏界面本身就是一个界面
    有些游戏是登录验证通过后,在页面的div里嵌入游戏的,但页面没有刷新。