Amazon AWSのS3にwebページのスクショやアップロード画像を保存する

 

自作のWebサービスで必要だったため、アップロードした画像やwebページのスクショを保存するコードを用意した。(Node.js前提)

  • webのスクショをとるには
    • webshotのnpmをインストール
  • 画像をS3に保存するには
    • AWSのnpmで行う

こんなところざっとメモっておく。

webのスクショをとる

webshotをインストールすれば簡単に取ることができる。

必要なのは取るべきURLと保存してほしいパスを指定するだけ。

optionsでスクリーンのサイズや切り取り範囲を指定できる。

var options = {

                                screenSize: {

                                    width: 1201

                                    , height: 600

                                }

                               , shotSize: {

                                    width: 1200

                                    , height: 600

                                }

                            };

AWSのS3に保存する

これもAWSのパッケージをインストールして、以下の行をあらかじめ記述しておく。

var AWS = require(‘aws-sdk’);

var s3BucketName = ‘S3のバケット名’;

全体のコード

雑なコードだけど、

    1. webshotでスクリーンショットをとって
    2. そのファイルを読み出して
  1. S3において
  2. 読み出したファイルを消している

 

About the author

コメントを残す