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 キャッシュ全体をクリアしましたが、コードは引き続き機能します。
私の質問は、
Credentials
保存されている場所はどこですか? クッキー?HttpRequest が IE プロキシ設定を使用する方法はありますか? -> ユーザー名とパスワードを尋ねる必要はありません。