PRESSMAN*Tech(プレスマンテック)

東日本橋の制作・開発会社 プレスマンのスタッフブログ

カテゴリー:サーバレス

PuppeteerをLambdaで使う前段階、serverless-chrome/lambdaのnpmインストールでハマったときの解決法

Node.js初心者の自分が以下の先輩の記事を読み、「Puppeteer on Lambdaをやってみたい!」と思って試したところ、Lambdaにデプロイする前にハマったので解決法を紹介します。

Puppeteer on LambdaでWebページのキャプチャを撮る

前提

  • Node.jsとnpmがインストールされている
  • Node.jsのバージョンはv8.10.0である

下記のコマンドでバージョンをチェックします。

$ node -v add
v8.10.0

ディレクトリ構成がわからない

自分はNode.jsのプロジェクトを作成するのが初めてだったので、ディレクトリ構成がわかりませんでした。まずはPuppeteer用のディレクトリを作成し、その中で下記の2ファイルを作りましょう。

├── .npmrc
└── package.json

プロジェクトごとに.npmrcを設定するのがベターです。.npmrcとpackage.jsonの内容は後述します。

続きを読む

Puppeteer on LambdaでWebページのキャプチャを撮る

Puppeteer on Lambda

AWS Lambdaで遂にNode v8.10を使用できるようになりました。
これでPuppeteerが使える!と意気揚々としていたのですが、いつの間にか必須要件がv6.4.0以上となっていました。以前はv7.10以上必須と書かれていたはずですが・・・

いきなり出鼻を挫かれましたが、気を取り直していきます。

はじめに:Puppeteerとは

Google謹製のGoogleChromeを自動操作するライブラリです。Nodeで動作します。
「このサイトにアクセスして、このボタンをクリックして・・・」といった操作を自動で行うことができます。雑に言うとExcelのマクロみたいなものです。
Chrome59で実装されたヘッドレスモードに合わせる形でプロジェクトが立ち上がり、主にWebアプリの自動化テストの分野で注目されています。
似たプロジェクトにPhantomJSChromelessがあります。

続きを読む

Slackに溜まり続けたファイルをLambdaでサクッと消してみる

はじめに

こんにちは。CTOの穴原です。 弊社では1年半くらい前からSlackを導入し、使用しています。 おかげでリモートワークをする方も増え、働き方も多用になってきました。
(特にママさんワーカーが増えました!)

Slackをフリープランで使用していると、ストレージ容量制限を超えて怒られてしまいます。 最近アップロードしたファイル以外は一括削除したい + 継続的に削除が走るようにしたい、ということで、SlackAPI × Lambdaで実装してみました。

Slack API を使ってみる

まずは、Slack APIを使ってみます。

今回はfiles.listでファイルの一覧を取得し、files.deleteで対象のファイルを削除する、という流れでやってみようと思います。 (APIの使い方はここ

Slack APIのメソッドの引数はtokenがRequiredになっているので、取得しておきましょう。*1 (tokenの取得はここから)

Lambda

Lambdaで関数を作成します。 SlackのBluePrintも用意されているのですが、それほど難しくないので、今回は一から作成しました。

Nodeのコードはこんな感じ。

続きを読む

▲ 先頭へ戻る