我知道可以从 Web 浏览器控件中打开的网站下载图像,但实际上可以通过获取图像 URL 并下载它来实现。有一个网站不允许直接链接,所以图片无法下载,所以我能想到的唯一方法是从网络浏览器控件的缓存中复制图片。
问问题
3016 次
1 回答
1
您可以使用在线 c# 到 vb.net 转换器,如telerik或developerfusion,以便将来在 vb.net 中获取代码。
- 将对 Microsoft.mshtml 的引用添加到您的项目中
- 将下一个代码添加到 webBrowser DocumentCompleted 事件处理程序中
示例代码:
Private Sub webBrowser1_DocumentCompleted(sender As Object, _
e As WebBrowserDocumentCompletedEventArgs) _
Handles WebBrowser1.DocumentCompleted
Dim doc As IHTMLDocument2 = _
DirectCast(webBrowser1.Document.DomDocument, IHTMLDocument2)
Dim imgRange As IHTMLControlRange = _
DirectCast(DirectCast(doc.body, _
HTMLBody).createControlRange(), IHTMLControlRange)
For Each img As IHTMLImgElement In doc.images
imgRange.add(DirectCast(img, IHTMLControlElement))
imgRange.execCommand("Copy", False, Nothing)
Using bmp As Bitmap = DirectCast( _
Clipboard.GetDataObject().GetData(DataFormats.Bitmap), Bitmap)
bmp.Save("C:\" + img.nameProp)
End Using
Next
End Sub
于 2013-06-03T03:15:09.157 回答