【问题标题】:Opening the downloaded file from a website从网站打开下载的文件
【发布时间】:2018-03-10 01:10:55
【问题描述】:

我可以访问该网站并单击“下载”按钮,一旦我单击它,下载对话框就会在底部打开,其中包含“打开”、“保存”、“取消”按钮。我想点击打开按钮并以可爱的 pdf 格式打印打开的文件。

如何点击打开按钮请帮帮我。

用于点击下载按钮的代码

ie2.Document.forms("ViewReferral").getElementsByClassName("notsuccess")(0).getElementsByTagName("tr").Item(1).getElementsByTagName("td").Item(3).getElementsByTagName("A").Item(0).Click

一旦我点击了上面提到的对话框。

谢谢。

【问题讨论】:

  • 该按钮不是网页的一部分。您是否尝试过研究如何单击 IE 命令按钮?另外,文件名总是一样的吗?有更简单的方法来下载文件。
  • 是的,你说得对,它不是网页的一部分。我做了一些研究并尝试直接下载它,而不用在网站上使用“href”点击下载按钮,但它失败了。
  • 这样您就可以检索文件的完整 url?例如:如果您手动检索它,并将其粘贴到浏览器的地址栏中,文件是否会下载?
  • 我无法获得完整的 URL,因为一旦我单击该按钮,它将不会导航到另一个浏览器 href= ../common/documentation.php?Action=Print&DocumentationId=XXXX&origin=viewreferral.php
  • @arunv 也许this 会有所帮助

标签: vba excel


【解决方案1】:

无需尝试单击浏览器“打开/保存/取消”栏上的按钮,您可以直接下载文件,只要您能够通过任何刮削方法。


使用 VBA 从 URL 下载文件

Option Explicit

Sub downloadFile(url As String, filePath As String)

    Dim WinHttpReq As Object, attempts As Integer, oStream
    attempts = 3
    On Error GoTo TryAgain
TryAgain:
    attempts = attempts - 1
    Err.Clear
    If attempts > 0 Then
        Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
        WinHttpReq.Open "GET", url, False
        WinHttpReq.send

        If WinHttpReq.Status = 200 Then
            Set oStream = CreateObject("ADODB.Stream")
            oStream.Open
            oStream.Type = 1
            oStream.Write WinHttpReq.responseBody
            oStream.SaveToFile filePath, 2 ' 1 = no overwrite, 2 = overwrite
            oStream.Close
            MsgBox "File downloaded to:" & vbLf & filePath
        End If
    Else
        MsgBox "Failed."
    End If

End Sub

Sub testDownload()
    Const testFileURL = "http://ipv4.download.thinkbroadband.com/5MB.zip"
    Const localSavePathFile = "c:\5MB_testfile.zip"
    downloadFile testFileURL, localSavePathFile
End Sub

(Source)

【讨论】:

  • 非常感谢您抽出宝贵的时间@ashleedawg,因为我没有完整的网址,所以它不起作用。
猜你喜欢
  • 2021-12-29
  • 1970-01-01
  • 1970-01-01
  • 2017-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多