Puppeteer

[Puppeteer][|::ref1::|Main]は、 devtools プロトコルを介して Microsoft Edge \ (Chromium ) を制御する高レベルの API を提供するノードライブラリです。 Puppeteer は既定で ヘッドレス を実行します。これは、UI が表示されず、コマンドラインを使う必要があることを意味します。 また、Microsoft Edge または Chromium の完全な \ (非ヘッドレス) を実行するように Puppeteer を構成することもできます。

既定では、Puppeteer をインストールすると、インストーラーは最新バージョンの Chromiumをダウンロードします。これに は、Microsoft Edge も構築されているオープンソースブラウザーを使用します。 Microsoft Edge \ (Chromium ) がインストールされている場合は、 puppeteerを使うことができます。 puppeteer-core は、Microsoft Edge \ (Chromium ) など、既存のブラウザーインストールを起動する簡易バージョンの Puppeteer です。 Microsoft Edge \ (Chromium) をダウンロードするには、「 Microsoft Edge Insider チャネルをダウンロードする」を参照してください。

Puppeteer をインストールする-core

puppeteer-core次のいずれかのコマンドを使用して、web サイトまたはアプリに追加することができます。

npm i puppeteer-core
yarn add puppeteer-core

Puppeteer core で Microsoft Edge を起動する

注意

puppeteer-core Node v 8.9.0 以降に依存します。 次の例では、 async / await Node v 7.6.0 以降でのみサポートされています。 node -vコマンドラインから実行し、互換性のあるバージョンの Node.js があることを確認します。

puppeteer-core web ドライバーなど、他のブラウザーのテストフレームワークのユーザーに慣れている必要があります。 ブラウザーのインスタンスを作成し、ページを開き、Puppeteer API で操作します。 次のコードサンプルでは、 puppeteer-core Microsoft Edge \ (Chromium ) を起動し、に移動し https://www.microsoftedgeinsider.com て、スクリーンショットをとして保存し example.png ます。

以下のコードサンプルをコピーして、として保存し example.js ます。

const puppeteer = require('puppeteer-core');

(async () => {
  const browser = await puppeteer.launch({
    executablePath: 'C:\\Program Files (x86)\\Microsoft\\Edge Dev\\Application\\msedge.exe'
  });
  const page = await browser.newPage();
  await page.goto('https://www.microsoftedgeinsider.com');
  await page.screenshot({path: 'example.png'});

  await browser.close();
})();

executablePathMicrosoft Edge \ (Chromium ) のインストールをポイントします。 たとえば、macOS では、 executablePath Microsoft Edge カナリアをに設定する必要があり /Applications/Microsoft\ Edge\ Canary.app/ ます。 を見つけるに executablePath edge://version は、そのページの 実行可能ファイルのパス に移動してコピーするか、次のいずれかのコマンドを使用して エッジパス パッケージをインストールします。

npm i edge-paths
yarn add edge-paths

次のコードサンプルでは、 edge パス パッケージを使用して、オペレーティングシステムの Microsoft edge \ (Chromium) へのパスがプログラムによって検出されます。

const edgePaths = require("edge-paths");

const EDGE_PATH = edgePaths.getEdgePath();

最後に、を設定 executablePath: EDGE_PATH example.js します。 変更内容を保存するには、[保存] をクリックします。

注意

Microsoft Edge \ (EdgeHTML ) は、では使用できません puppeteer-core 。 この例の後で続行するには、 Microsoft Edge Insider チャネル をインストールする必要があります。

それで example.js は、コマンドラインから実行します。

node example.js

puppeteer-core Microsoft Edge を起動し、 https://www.microsoftedgeinsider.com ページの 800px x 600px のスクリーンショットに移動して保存します。 ページサイズは、 page のビューポート ()でカスタマイズできます。

example.js によって生成された example.png ファイル

図 1: 次の方法で作成された example.png ファイル example.js

これは、Puppeteer とによって有効になるオートメーションとテストのシナリオの簡単な例にすぎ puppeteer-core ません。 Puppeteer とそのしくみの詳細については、「 [Puppeteer][|::ref2::|Main]」を参照してください。

Microsoft Edge DevTools チームと連絡を取り合う

Microsoft Edge 開発者チームは、Puppeteer、、Microsoft Edge の使用についてのフィードバックをお寄せ puppeteer-core ください。 Microsoft edge の DevTools またはツイート@EdgeDevToolsの [フィードバックの送信] アイコンを使用して、microsoft edge チームに自分の感想を伝えます。

Microsoft Edge DevTools の [フィードバックの送信] アイコン

Microsoft Edge DevTools の [ フィードバックの送信 ] アイコン