クリックしてみな |
セキュリティアップで、VBAでネット情報がダウンロードできなくなりました。
今までは、”URLDownLoadToFile”関数が使えたのですが、どうもブロックだ。
ならばと、”Selenium Basic”をインストールしてダウンロードを代替します。
ブラウザー”Chrome”のドライバーを使いますが、”Edge”も同系統のブラウザ。
母体がクロミウムで開発されていますので、ドライバーさえあれば使えそうだ。
実際に過去のドライバーは、ダウンロ―ドもできてクローム同様に便利でした。
ところが、マイクロソフトが、ダウンロードのファイル名を変更したようです。
そのまま、VBAでファイルを使ったら、エラーが出てドライバーを認識しない。
Sub sample()
Dim Driver As New Selenium.WebDriver
Driver.Start "Edge", "URLを記述" '→ Edgeで起動を指定
Driver.Get "/" '→ ここでedgedriver.exeを読み込んで来る
Stop '→ ブラウザを閉じないための中断状態にする
End Sub
どうも、ドライバー名が”msedgedriver.exe”へ変更れされていると判明した。
であるなら、Driver.Startで”Edge”から”MSedge”に切り替えたらどうなるか。
やってみると、エラーが出ますので、”Selenium Basic”は、”Edge”だけです。
何なら、新ドライバーのファイル名を旧ファイル名に戻して、コピペしようか。
正に、中国の「上に政策あり、下に対策あり」という現象に見習ったのですな。
実際にやってみたところ、あーら、ちゃんとブラウザが起動してくれて安堵だ。
以前も、このブラウザでは、起動アプリのプログラム名が変更されていました。
この時も、VBAコードを書き替えて対応した思い出があり、似たようなものか。
もっとも、このドライバーは頻繁に更新されるようなので、差し替えも必要ね。
ダウンロードで解凍して、コピペしたらドライバー名を旧名に戻して対応する。
というわけで、だいぶ前に開発の終了した”Selenium Basic”では変更もない。
他方、VBAだって2012年にリリースしたVer7.1が最終で、これ以上の変更はありませんから、似た者同士のお古なアプリを使うとして、マイクロソフトが姑息に変更を掛けるのも、新しいPythonやSelenium言語を使わせたくて必至なのだろう苦笑するのでした。
注:使用したExcelは、”Office365”版です。
0 件のコメント:
コメントを投稿