puppeteer で日本語のページを開く

puppeteer はデフォルトでは Chrome の言語設定が en-US になっているので、日本語でページを開きたいときは以下のような設定が必要。

const launchOptions = {
  args: ['--lang=ja-JP'],
}
const browser = await puppeteer.launch(launchOptions);

サイトによっては、下記のように HTTP ヘッダで Accept-Language も指定しないといけない。 Amazon とかはこれがないと日本語にならなかった。

page = await browser.newPage();
await page.setExtraHTTPHeaders({'Accept-Language': 'ja-JP'});