22

EdgeのWebDriverをダウンロードするバッチファイルです。

メモ帳を開き、下記のバッチファイルの内容をコピペします。

保存時は、文字コードをANSI にし、ファイル種類は全て(*.*)、ファイル名はGetEdgeDriver.bat とし、

自ログインIDだけなら、C:\Users\ログインID\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

どのユーザでも実行する場合は、C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp  (管理者権限が必要)

に保存します。

これで、ログイン時に、Edgeと、WebDriverのバージョンを比較し、相違があれば、WebDriverをダウンロードし、解凍、差し替えを行います。

========バッチファイル========

@echo off
SET ZUMIDRV=%USERPROFILE%\Documents\WinActor\webdriver\msedgedriver.exe
SET WORK=%TEMP%\WAGETWD
SET VBS=%WORK%\Getdrv.vbs
SET ZIP=%WORK%\DRV.ZIP
SET DRV=%WORK%\DRV

IF NOT Exist "%USERPROFILE%\Documents\WinActor\webdriver" MD "%USERPROFILE%\Documents\WinActor\webdriver"

rem 取得済みWebDriverバージョンを取得

IF NOT Exist "%ZUMIDRV%" GOTO GETEDGE
for /f "usebackq" %%A in (`powershell -command ^(get-item "%ZUMIDRV%"^).Versioninfo.FileVersion`) do set ZUMIVer=%%A

:GETEDGE
rem Edgeバージョンを取得

SET EDGE=C:\progra~1\microsoft\edge\application\msedge.exe

IF Exist "C:\progra~2\microsoft\edge\application\msedge.exe" SET EDGE=C:\progra~2\microsoft\edge\application\msedge.exe
for /f "usebackq" %%A in (`powershell -command ^(get-item "%EDGE%"^).Versioninfo.FileVersion`) do set EDGEVer=%%A
echo 取得済み[%ZUMIVer%] Edge Version[%EDGEVer%]
IF "%ZUMIVer%"=="%EDGEVer%" GOTO ENDBAT

IF Exist "%WORK%" RD /S /Q "%WORK%"
md "%WORK%"

rem ダウンロード
echo Set objXmlHttp = WScript.CreateObject("MSXML2.XmlHttp")>%VBS%
echo objXmlHttp.Open "GET", "https://msedgedriver.azureedge.net/%EDGEVer%/edgedriver_win64.zip", False>>%VBS%
echo objXmlHttp.Send>>%VBS%
echo Set objStream = WScript.CreateObject("ADODB.Stream")>>%VBS%
echo objStream.Open>>%VBS%
echo objStream.Type = 1 >>%VBS%
echo objStream.Write objXmlHttp.responseBody>>%VBS%
echo objStream.SaveToFile "%ZIP%", 2 >>%VBS%
echo objStream.Close>>%VBS%
echo Set objStream = Nothing>>%VBS%
echo Set objXmlHttp = Nothing>>%VBS%
CSCRIPT "%VBS%"

:WAIT1
IF NOT Exist "%ZIP%" GOTO WAIT1

rem 解凍
powershell -command Expand-Archive -Path "%ZIP%" -DestinationPath "%DRV%"
:WAIT2
IF NOT Exist "%DRV%\msedgedriver.exe" GOTO WAIT2

rem WebDriverコピー
copy "%DRV%\msedgedriver.exe" "%ZUMIDRV%"
echo %EDGEVer%のEdge用WebDriverをセットしました

:ENDBAT

SET WATMP=C:\ProgramData\WinActor\%USERNAME%

IF EXIST "%WATMP%" RD /S /Q %WATMP%

GoogleCrome版は、スクリプト探究者様が投稿された内容をご利用ください。

2022/2/24 最後の2行に時々問題になるWinActorの作業フォルダの削除を追加しました。

この質問は解決済みのためクローズされています。
アルファテクノロジー 新しいコメントを投稿
回答とコメントは、会員登録(無料)で閲覧できるようになります。