BloomScheme Blog

株式会社ブルームスキーム公式ブログ

AWS Lambdaでpuppeteerを使うための環境構築

AWS CodeStar経由で生成したAWS Lambda (AWS Linux with Node.js)上にpuppeteerをインストールして使おうとしたところ、①Nodeのバージョンが古くasyncでエラー、②headless chromiumが動かない、③スクリーンショットが文字化けする、という問題が発生したので、解消方法を以下に記す:

①Node.jsのバージョンを更新

Node.jsのバージョンが古く(v.6)下記のエラーが発生:

github.com

そこで下記を実施して解消:

community.c9.io

②Headless Chromiumのdependenciesを全てインストール

dependenciesが未インストールのため、下記のエラーが発生:

stackoverflow.com

基本的には下記方法で解消:

medium.com
上記事におけるCentOS系のURLは現在無効となっているため、それらに関しては当該パッケージのURLを下記サイトから自分で探し出し(atk-2.28.1-1.el7.x86_64.rpm等のパッケージ名をGoogle検索すれば最上位に表示される)、置換:

centos.pkgs.org

③フォントをインストール

puppeteerにてスクリーンショットを撮ると日本語が文字化けするため、下記サイトのChromiumの周辺パッケージをインストールに記載のコードを走らせる:

kappariver.hatenablog.jp

以上で、puppeteerを問題なく使えるようになった。

 

f:id:BloomScheme:20190212205621p:plain