VBA:【Selenium】ブラウザでのファイルのダウンロード完了までの待機方法
Webシステム等からCSVなどのファイルをダウンロードする場合があります。
その際のダウンロードが完了する前に、Seleniumの処理が進んでブラウザが閉じてしまうことが起きてしまいます。
そこでCSVのダウンロードが完了したかどうかを判断して、完了するまで待機させ、完了後に処理を先に進める必要が出てきます。
ダウンロードの状況の取得方法が分からなかったので、ひとまずダウンロードするファイルが、あるかないかで判断するようなサンプルコードを作成しました。
◆ファイルダウンロードの完了判断
ダウンロードフォルダにダウンロードを開始したファイルの拡張子(csv等)のものが存在するまで繰り返す、という処理です。
ダウンロードするファイルの拡張子は決まっていると思うので、ひとまずこれで対応はできそうです。
1 2 3 |
Do While Dir(xTmpPath & "\*.csv", vbDirectory) = "" .Wait 1000 'とりあえず1秒待って、状況をチェックするようにしています。' Loop |
このコードを使ったブラウザの起動から、ファイルのダウンロードまで一連の流れのコードを以下の記事に書きましたので合わせてご覧ください。
関連記事