1

Web サイトの innerHTML テキストを取得するために、次のコードを作成しました。

Public Function GetInnerHtmlBody(ByVal Url As String) As HTMLDocument
    Dim ResponseDocument As New HTMLDocument

    Dim MyRequest As New WinHttpRequest
    With MyRequest
        .SetTimeouts 5000, 5000, 5000, 5000
        .SetProxy HTTPREQUEST_PROXYSETTING_PROXY, "<PROXY_SERVER_IP>:<PORT>", "*.domain.com"

        .Open "GET", Url, False

        '// Authentication for the proxy server
        '.SetCredentials "<USERNAME>", "<PASSWORD>", CREDENTIALS_FOR_PROXY

        .Send

        '// Debug
        MsgBox .ResponseText, vbInformation, .StatusText & " - " & .Status

        ResponseDocument.body.innerHTML = .ResponseText
    End With

    Set GetInnerHtmlBody = ResponseDocument
End Function

ご覧のとおり、行.SetCredentialsはコメントアウトされています。この行は、プロキシ サーバーで認証するために 1 回だけ必要でしたが、ログイン資格情報が保存されたように見えます。これは、行を除外しても、コードが特定の Web サイトの HTML コードを正常に取得するためです。

コンピューターを再起動し、IE キャッシュ全体をクリアしましたが、コードは引き続き機能します。

  1. 私の質問は、Credentials保存されている場所はどこですか? クッキー?

  2. HttpRequest が IE プロキシ設定を使用する方法はありますか? -> ユーザー名とパスワードを尋ねる必要はありません。

4

0 に答える 0