【Node.js】puppeteerを使ってみた

JavaScript

puppeteerについて

Node.jsからHeadless Chromeを簡単に扱えるようにしてくれたものです。
https://github.com/puppeteer/puppeteer

フロントの自動テストだったり、SPAのスクレイピングにも使えそうです。

セットアップ

適当なディレクトリにて、以下を実行

$ yarn init -y
$ yarn add puppeteer

とりあえず使ってみた

const puppeteer = require('puppeteer');

async function getHtmlContents(page, url){
    await page.goto(url); // ページへ移動
    // 任意のJavaScriptを実行
    return await page.$eval('html', item => {
        return item.innerHTML;
    });
}

!(async() => {
    try {
        const browser = await puppeteer.launch();
        const page = await browser.newPage();

        const html = await getHtmlContents(page, 'http://example.com');
        console.log(html);
        browser.close();
  } catch(e) {
        console.error(e);
  }
})()

使ってみて

とても気軽に触れます。スクリーンショットの機能なども使えるみたいなので、色々試してみたいです。

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