インターネット接続を必要とするスクリプトを自分用に作成しました。その中には多くの「UrlDownloadToFile」コマンドがあります。私の問題は、インターネット経由で作業するために、ブラウザにプロキシを追加し、次にユーザー名とパスワードを追加する必要があるプロキシ環境で作業していることです。
このため、私のアプリケーションはまったく正常に動作していません。助けてください。
インターネット接続を必要とするスクリプトを自分用に作成しました。その中には多くの「UrlDownloadToFile」コマンドがあります。私の問題は、インターネット経由で作業するために、ブラウザにプロキシを追加し、次にユーザー名とパスワードを追加する必要があるプロキシ環境で作業していることです。
このため、私のアプリケーションはまったく正常に動作していません。助けてください。
複雑なダウンロードの状況では、コマンド ライン ツールのCurlを使用します。これは AHK とうまく連携し、プロキシだけでなく、ポストデータ、Cookie、およびユーザー エージェントも処理します。
プロキシを使用して Google ホームページをファイル result.txt にダウンロードするプロキシの呼び出し例は次のようになります。
URL := "http://www.google.com"
Runcurl = curl.exe "%URL%" -x user:password@proxyhost:port -o "result.txt"
Runwait, %comspec% /c %RunCurl%, , Hide
最も簡単な方法は、ある程度制御されたバイパスです。サイトを信頼する場合 (ユーザー名とパスワードを持っているので信頼できると思います)、Internet Explorer の設定に移動し、そのサイトを [セキュリティ] タブの [信頼済みサイト] セクションに追加します。
(IE を開き、メニュー、インターネット オプション、セキュリティ、信頼済みサイト、サイト、-オプション- https に関する下部のチェックボックスをオフにし、[追加] をクリックします)
IE でサイトにログインし、このスクリプトを使用してダウンロードを試みます (注: プロキシ サーバーは oct.oct.oct.oct:Port です)。
Blah := URLDownload("http://google.com")
FileAppend, %Blah%, Blah.csv
UrlDownload(URL, ProxyServer = "")
{
ver := ""
Try
{
WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
If ProxyServer
WebRequest.SetProxy(2,ProxyServer)
WebRequest.Open("GET", URL)
WebRequest.Send()
ver := WebRequest.ResponseText
}
WebRequest := ""
return ver
}