Сохранить приглашение при загрузке из IE с помощью vba - PullRequest
0 голосов
/ 12 февраля 2019

Я собираюсь скачать файл с безопасного сайта.Его постоянно спрашивают при сохранении.

есть ли способ загрузить файл с прикрепленной веб-страницы

enter image description here

Предложить мне скачать файл для конкретногопуть без приглашения

Ссылка на файл: "https://www.connect2nse.com/ENIT/imsscsv_download.jsp?filename=07730_Dormant_Account_08022019.csv&filepath=/dmsapp/mnt/appln/DMSWeblogic/ENIT_FILES/COMMUNICATION_LOG/SENDER/INVESTIGATION_ALERTS/07730_Dormant_Account_08022019.csv"

<a href="/ENIT/imsscsv_download.jsp?filename=07730_Dormant_Account_08022019.csv&amp;filepath=/dmsapp/mnt/appln/DMSWeblogic/ENIT_FILES/COMMUNICATION_LOG/SENDER/INVESTIGATION_ALERTS/07730_Dormant_Account_08022019.csv">
                     07730_Dormant_Account_08022019.csv</a>

Я также не могу загрузить файл с указанной выше ссылки

, но, используя правую кнопку мыши, система напрямуюразрешить сохранение файла

есть ли другая опция, использующая vba для сохранения файла без запроса кликом по ссылке href

, пожалуйста, предложите

1 Ответ

0 голосов
/ 12 февраля 2019

Когда речь идет о загрузке файлов, лучше использовать XmlHttpRequest вместо роботизированной веб-очистки.С помощью макроса ниже:

Sub DownloadFile(ByVal fileLink As String, ByVal username, ByVal password)

    Dim XmlHttpReq As Object
    Set XmlHttpReq = CreateObject("Microsoft.XMLHTTP")
    XmlHttpReq.Open "GET", fileLink, False, username, password
    XmlHttpReq.send '<-- send the GET request of your resource file to the website

    fileLink = XmlHttpReq.responseBody 'save response body
    If XmlHttpReq.Status = 200 Then 'if GET request was OK
        Set adodbStream = CreateObject("ADODB.Stream") 'Create a Stream
        adodbStream.Open 'open it
        adodbStream.Type = 1 
        adodbStream.Write XmlHttpReq.responseBody 'write response in it
        adodbStream.SaveToFile "C:\file.csv", 2 ' 1 = doesn't overwrite, 2 = overwrites 'save it
        adodbStream.Close 'close stream
    End If

End Sub

... вы сможете выполнить сохранение как таковое:

Sub YourMainMacro()
    '... your code
    DownloadFile yourAHRef, yourUsername, yourPassword
    '...continue your code
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...