刚才在回答个帖子中,说如何获取http://bbs.banbijiang.com/seccode.php?update=72425这个网址显示出的图片HttpWebRequest request = (HttpWebRequest) WebRequest.Create("http://bbs.banbijiang.com/seccode.php?update=72425");
            request.UserAgent = "IE 8.0"; //必须得加,目标地址对浏览器进行了检测
            HttpWebResponse response = (HttpWebResponse) request.GetResponse();
            Stream stream =  response.GetResponseStream();            Image img = Image.FromStream(stream);
            img.Save(File.Open("e:\\spideBmp.gif", FileMode.OpenOrCreate), ImageFormat.Gif);
            img.Dispose();
            response.Close();这样可以保存http://www.XXXX.gif的图片,但不能保存这种图片流,请高手解答。
原帖地址忘了。

解决方案 »

  1.   

    原帖中有个哥们用WebBrowser截图解决的
      

  2.   

    你可以把这个FLASH下载下来,使用FLASH的控件显示,或者使用WebBrowser显示都可以吧
    提交验证码时注意COOKIE就行了
      

  3.   

    楼主说的是这个帖子吗?
    http://topic.csdn.net/u/20101027/16/15b2004f-3e98-4170-93ae-c1c17e9ad323.html
    这代码我测过,确实可行。
    不过你说的那句获取不到文件流是什么意思?
      

  4.   


    //引用using System.Windows.Forms;
    using System.Windows.Forms;
    System.Drawing.Bitmap bitmap;
    using (WebBrowser wb = new WebBrowser())
                {
                    wb.ScrollBarsEnabled = false;
                    wb.Navigate(url);
                    //确保页面被解析完全
                    while (wb.ReadyState != WebBrowserReadyState.Complete)
                    {
                        System.Windows.Forms.Application.DoEvents();
                    }
                    int height=wb.Document.Body.ScrollRectangle.Height;
                    int width = wb.Document.Body.ScrollRectangle.Width;                wb.Width = width;
                    wb.Height = height;                bitmap = new System.Drawing.Bitmap(width, height);
                    wb.DrawToBitmap(bitmap, new System.Drawing.Rectangle(0, 0, width, height));
                    wb.Dispose();
                }
      

  5.   

    WebBrowser截图可以变通地为Flash、XML、Txt之类的任何浏览器中可显示的文件抓图
    http://www.cnblogs.com/SkyD/archive/2009/11/21/1607762.html