0

我知道可以从 Web 浏览器控件中打开的网站下载图像,但实际上可以通过获取图像 URL 并下载它来实现。有一个网站不允许直接链接,所以图片无法下载,所以我能想到的唯一方法是从网络浏览器控件的缓存中复制图片。

4

1 回答 1

1

您可以使用在线 c# 到 vb.net 转换器,如telerikdeveloperfusion,以便将来在 vb.net 中获取代码。

  1. 将对 Microsoft.mshtml 的引用添加到您的项目中
  2. 将下一个代码添加到 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 回答