[Docker][Puppeteer] サイトのスクリーンショットを Slack に投稿する
ウェブサイトのスクリーンショットを Slack に投稿する方法。
GitHub で公開されている screenshot2slack というツールを利用する。Docker の Puppeteer を使ってスクリーンショットを撮影、Slack に投稿する。
GitHub - ryysud/screenshot2slack: screenshot2slack is a tool uploading a screenshot to slack with puppeteer on docker.
https://github.com/ryysud/screenshot2slack
ryysud/screenshot2slack - Docker Image | Docker Hub
https://hub.docker.com/r/ryysud/screenshot2slack
環境:macOS High Sierra Version 10.13.6(英語環境)、Docker Desktop Version 3.2.2
(0)Mac に Docker をインストールしておく。起動。
Docker Desktop for Mac by Docker | Docker Hub
https://hub.docker.com/editions/community/docker-ce-desktop-mac/
(1)【Slack の Token の作成】
(1−1)以下のページにアクセス。
Slack API: Applications | Slack
https://api.slack.com/apps
「Create New App>From scratch>From scratch」をクリック。以下のように設定する。
・App Name:適当に名前を付ける。
・Pick a workspace to develop your app in:自分の workspace を選択する。
「Create App」をクリック。
(1−2)(新しいデザインと古いデザインのページがあるが、今回は新しいデザインのページで設定する。)
「Settings>App Manifest」の YAML に以下を追記、「Save Changes」をクリックする。
oauth_config:
scopes:
user:
- files:write
- chat:write
「General>Basic Information」をクリックすると、User Scope に chat:write と files:write と記入されているはずだ。
(1−3)「Distribution>Install App>Install to Workspace>Allow」をクリック。
「User OAuth Token」が発行されるので控えておく。
(2)Terminal で以下のコマンドを実行し、screenshot2slack を使える状態にする。
$ docker pull ryysud/screenshot2slack
例えば以下のようなコマンドを実行することで、weathernews のサイトのスクリーンショット(名古屋の天気)を Slack の test チャンネルに に投稿できる。
$ docker run --rm \
-e SLACK_BOT_TOKEN=[1−3の User OAuth Token] \
-e CHANNEL=test \
-e TARGET_URL=https://weathernews.jp/s/forecast/detail.fcgi?area=Nagoya \
-e WIDTH=600 \
-e HEIGHT=900 \
ryysud/screenshot2slack:latest
参考:
Raspberry PiからSlackへ画像投稿
https://monomonotech.jp/kurage/raspberrypi/slack.html
この記事が気に入ったらサポートをしてみませんか?