Chrome115以降のWebDriver調達
Chrome115以降で、適合するWebDriver調達のハードルがやや上がった認識です。
汎用性が高いアプローチを特定してまとめました。
お裾分けです。
今のところ100%成功してます。
もっとラクで標準的な手順があれば教えてください。
最下部に Selenium Manager / webdriver_manager 周辺の情報も添えてます。
こんなかた向けです。
- WebDriverの自動更新が叶わない環境でWinActorを使っている
- バージョンアップのタイムラグ等で、リリースされてるWebDriverではChromeに適合しないタイミングがある
- PowerShellとか、WinActor以外でWebDriverを使ってChromeを制御する機会がある
基本手順
- chrome://version/ にアクセスして、1行目でChromeのバージョンを確認する
- 適合するWebDriverをダウンロード、インストール(解凍し、フォルダに格納)する
これまでのChromeDriverの入口
あるいは
Chrome114まではこのリストから探してゲットするのが分かりやすい
Chrome115以降の入口
the Chrome for Testing をクリック
あるいは
the Chrome for Testing availability dashboard をクリック
最新のChromeが降ってくる環境なら、Stableのchromedriverのうちwin32をダウンロードして使う
投稿時点ではこれを使う
https://storage.googleapis.com/chrome-for-testing-public/124.0.6367.91/win32/chromedriver-win32.zip
[参考]バージョン表記
バージョンにあれこれ考えを巡らせてみる #ポエム - Qiita
https://qiita.com/t_nakayama0714/items/c312bc5edcce6c214856
124.0.6367.91の場合
- 124:メジャー:揃えたい
- 0:マイナー:揃えたい
- 6367:ビルド:なるべく揃えたい
- 91:リビジョン:揃うに越したことはない
(ここから本題)
Stableが適合しなかったら、適合するWebDriverの在り処を特定して使う
Chrome115以降の入口
our JSON API endpoints をクリック
https://github.com/GoogleChromeLabs/chrome-for-testing#other-api-endpoints
browse the complete list of JSON and text files をクリック
ここに辿り着く
使用中のメジャーバージョンをクリック
たとえば120ならLATEST_RELEASE_120
ダウンロードされたファイルをメモ帳やサクラエディタで開き、メジャーバージョンに最も適合するWebDriverのバージョンを確認する
Stableのバージョン部分を書き換えたURLにアクセスし、WebDriverをダウンロード
120なら投稿時点で120.0.6099.109
https://storage.googleapis.com/chrome-for-testing-public/120.0.6099.109/win32/chromedriver-win32.zip
問題の切り分け等で、使用中のChromeバージョンにより近いWebDriverを使ってみる場合
途中のビルドをクリック
たとえば120.0.6070ならLATEST_RELEASE_120.0.6070
同じく、ビルドに最も適合するWebDriverのバージョンを確認する
120.0.6070なら投稿時点で120.0.6070.0
https://storage.googleapis.com/chrome-for-testing-public/120.0.6070.0/win32/chromedriver-win32.zip
リビジョンまで完全一致のURLだと、WebDriverが提供されていなかったりする
https://storage.googleapis.com/chrome-for-testing-public/120.0.6070.5/win32/chromedriver-win32.zip
存在するWebDriverを把握する手順
Chrome115以降の入口から
JSON API endpoints をクリック
https://github.com/GoogleChromeLabs/chrome-for-testing#json-api-endpoints
known-good-versions-with-downloads.json をクリック
https://googlechromelabs.github.io/chrome-for-testing/known-good-versions-with-downloads.json
Ctrl+Fで検索すればヒットする
ここまでに特定してきた2つはヒットする
https://storage.googleapis.com/chrome-for-testing-public/120.0.6099.109/win32/chromedriver-win32.zip
https://storage.googleapis.com/chrome-for-testing-public/120.0.6070.0/win32/chromedriver-win32.zip
JSON形式は慣れてないと読みにくい
たとえばJSON Viewer系で読み込んでみると少し読みやすくなる
https://chromewebstore.google.com/detail/efknglbfhoddmmfabeihlemgekhhnabb?hl=ja
114/115の垣根なくすべてのバージョンを辿れるみたい
120からこの順で辿るとchromedriver-win32.zipのURLを確認できる
versions > 120 > downloads > chromedriver > url
JSONのほうが便利なのかも
versions直下の数字はChromeDriverのバージョンってことではなさそう
検索ボックスで「120.0.6086.0」を探すとversionsの321がヒットする
versionsは通し番号、連番っぽい
展開したurl
https://storage.googleapis.com/chrome-for-testing-public/120.0.6086.0/win32/chromedriver-win32.zip
JSON→CSVコンバータの類もたくさん見つかる
表形式が好きな人向け
John先生による、selenium_manager.exe の紹介
ブラウザ起動で「スクリプトの実行に失敗しました。」 エラー番号: 0x00000001
https://winactor.com/?p=112600
以下、Chrome115以降のWebDriverに関する情報
【Ruby/Selenium】v115からChromeDriverの配布元が変わったようなので対応した話 | しきゆらの備忘録
https://shikiyura.com/2023/07/fix_chromedriver_v115_distribution_change/Selenium Manager の情報あり
Chrome Ver.115以降の対応について - ボイステクノ
https://voicetechno-jp.secure-web.jp/ChromeDriverV115orNewer.htmlGetChromeDriver.exe の情報あり
WinActorユーザーもそれ以外も単独で使用可能
WinActorの自動更新機能に近い
Python+SeleniumWebDriverではwebdriver_managerを使うといちいちdriverのexeを置き換えなくて済む #Python - Qiita
https://qiita.com/YoshikiIto/items/000f241f6d917178981cwebdriver_manager の使いかたの情報あり
Selenium Manager を使っているのに chromedriver がバージョン違いで動かなかった話 #Python - Qiita
https://qiita.com/aokym/items/bf4a74da767cd676a2c8手動調達に近い情報あり
chromedriverの自動更新は標準化されたからwebdriver_managerは不要になった
https://javeo.jp/no-more-webdriver_manager/4. chromedriverのインストール先のフォルダ
これが活かせる環境なら、、
ドキュメント\WinActor\webdriver を同期させれば良い
たとえばROBOCOPYコマンドのバッチをスタートアップに仕込む
WinActorユーザーでこれができるなら、WinActorの自動更新機能も使える環境のはず
ここからが最も分かりやすかった
Python業務自動化マスタリングハンドブック|サポート|秀和システム
https://www.shuwasystem.co.jp/support/7980html/6806.htmlhttps://www3.shuwasystem.co.jp/support/download/6806/補足資料P273_Chrome WebDriverについて.pdf
【Selenium】Selenium Managerの紹介【ドライバのインストール手順は不要!】 | だえうホームページ
https://daeudaeu.com/python-selenium-manager/