[JavaScript+Selenium]Microsoft EdgeもWebDriverの事前準備が不要になりました

Web開発

お疲れ様です。すぺきよです。

転職活動や仕事が忙しくなったりなどの個人的な理由でしばらくブログの更新ができていませんでした。

やっと色々落ち着いてきたので、今回久しぶりに更新します。

Selenium Manager 0.4.15が2023年11月13日にリリースされており、ここでMicrosoft EdgeのWebDriverを自動的にダウンロードしてくれるようになりました。

ということで、実際にできるようになったのか確認してみようと思います。

筆者の環境

OS

macOS Ventura 13.5.2

node JS

v18.17.1

Selenium

4.15.0

実際に試してみた

結論

結論として、Microsoft Edgeも事前のWebDriverの準備が必要なくなっており、ブラウザの起動が簡単になっていました。

準備

まず、前提条件として、PC内にMicrosoft Edgeをインストールしていない場合は、インストールしておいてください。

新しいプロジェクトフォルダをひとつ作成し、以下のコマンドで最新のJavaScript用のSeleniumをインストールします。

npm install selenium-webdriver

インストールが完了したら、プロジェクトフォルダ内にindes.jsファイルを作成し、以下のコードを記述します。

例によって、ブラウザをSelenium経由で起動し、Googleを表示するためのコードになります。

let webdriver = require('selenium-webdriver');
let edge = require('selenium-webdriver/edge');

async function buildEdgeDriver(version = "stable")
{
    var options = new edge.Options();
    options.setBrowserVersion(version);

    return await new webdriver.Builder()
        .forBrowser('MicrosoftEdge')
        .setEdgeOptions(options)
        .build();
}

async function main()
{
    let web_driver = await buildEdgeDriver();
    await web_driver.get("https://www.google.com/");
}

(async ()=> {
    await main();
})();

最後に、次のコマンドで、スクリプトを実行します。

node index.js

初回起動時は、Microsoft Edge用のWebDriverをダウンロードがバックグラウンドで実行されるためブラウザの起動まで時間がかかります。

Selenium経由でMicrosoft Edgeが起動し、Googleのページが表示されることが確認できると思います。

さいごに

Seleniumの4.15.0と同時に、Selenium Managerの0.4.15もリリースされるのかと思っていました。

そのため、Seleniumの4.15.0がリリースされた「2023年11月1日」にも同じことを試したみたのですが、MicrosoftEdgeのWebDriverがダウンロードされませんでした。

そうこうしているうちに個人的に忙しくなってしまい、「2023年11月13日」のSelenium Manager 0.4.15のリリースから記事を書くまでが遅くなりました。

しかし、これで「Chrome」「FireFox」「Microsoft Edge」という主要なブラウザのWebDriverの事前準備が必要なくなり、格段にSeleniumが使いやすくなりましたね。

タイトルとURLをコピーしました