Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9104

PuppeteerでローカルのHTMLファイルをData URI Schemeとして読み込む

$
0
0

Puppeteerのpage.goto()はhttpプロトコルやfileプロトコルなどの他、Data URI scheme文字列も引数にできる。

下記のようなHTMLファイルを用意しておき

test.html
<html><head><metacharset="utf-8"/></head><body>
        Data URI schemeを表示できます
    </body></html>

同じディレクトリのJavaScriptからこのように読み込むと、

importfsfrom'fs/promises';importpuppeteerfrom'puppeteer';consthtml="./test.html"constbuffer=awaitfs.readFile(html)constbrowser=awaitpuppeteer.launch({headless:false,});constpage=(awaitbrowser.pages())[0];awaitpage.goto(`data:text/html;base64,${buffer.toString("base64")}`);// ...browser.close();

Chromiumで開いてくれる。
実運用ではまず使わないけど、ちょっとした確認をするときに便利だったりする。

なお、日本語が含まれていると、高確率で文字化けするので、charset指定をしておくのが無難。1


  1. ファイルをそのままChromiumで開いたら文字化けしなくても、なぜかData URI schemeだと化ける。なぜだ? 


Viewing all articles
Browse latest Browse all 9104

Latest Images

Trending Articles