frame框架中验证码图片抓取VB2010

今日写一个验证码识别自动登录的程序,发现网页中验证码图片是嵌在frame框架中,一时间遇到了问题无法搞定,网上搜了很多网页也没有具体的解决办法,今日偶然尝试居然搞定了,给大家分享一下。

HTML的源程序模拟如下:

<body>
<iframe src="hello.jpg"></iframe>
</body>

真实的场景SRC是一个类似于checkcode.ASP的链接,不能直接通过WEB地址抓取,不然图片就会变了,这个估计大家都知道,抓取这个图片代码如下(VB2010环境)


Dim Doc As mshtml.HTMLDocument = Webbrowser1.Document.Window.Frames(0).Document.DomDocument
Dim ImgA As mshtml.IHTMLImgElement = Doc.getElementsByTagName("IMG").item(0)
If ImgA IsNot nothing Then
Dim CR As mshtml.IHTMLControlRange = Doc.body.CreateControlRange()
CR.add(ImgA)
Dim ImgB As Image = nothing
CR.execCommand("copy")
ImgB = Clipboard.Getimage
ImgB.Save("c:\hello.jpg",System.Drawing.Imaging.ImageFormat.Jpeg)
End If


折腾了好几天,希望对大家有帮助

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...