您的位置:首页 > 编程语言 > C#

C# WebBrowser 抓图获取网页验证码

2010-01-10 15:11 423 查看
在.NET的WINFORM开发中,大家可能都比较熟悉了WINFORM控件的 DrawToBitmap 方法。但是,如果你使用 WebBrowser 的时候,却发现没有 DrawToBitmap 这个功能,然而,WebBrowser 实际上是有这个功能的, 只是在VS IDE的智能提示列表里面没有显示。

WHY ? 俺也不知道


网页中的验证码,其实是通过一个独立的页面来输出的,例如 CSDN 的登录验证码地址为: http://passport.csdn.net/ShowExPwd.aspx

我们下面用WebBrowser获取这个图片,显示在窗体的PictureBox上。

this.webBrowser1.Navigate("http://passport.csdn.net/ShowExPwd.aspx");


private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
Bitmap bmp = new Bitmap(200, 200);
webBrowser1.DrawToBitmap(bmp, new Rectangle(0, 0, 300, 300));
this.pictureBox1.Image = bmp;
}


需要说明的一点:

如果WebBrowser是动态创建的,则必须可见,否则,抓图是全白,没有内容的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: