Stimulator

機械学習とか好きな技術話とかエンジニア的な話とかを書く

簡易にSlackへPostする方法とPythonスクリプト

- はじめに -

Python機械学習スクリプトを回して終了した際にSlack通知欲しい場合がある。

SlackへPostする方法はいくつかある。

多分Incoming WebHooksで設定するのが一番楽。

数分でできるメモ


 

- Slack側の設定 -

自分が参加しているhogehogeチャンネルのcustomize-integrationsへ飛ぶ
https://hogehoge.slack.com/apps/manage/custom-integrations


Incoming WebHooksを選択
f:id:vaaaaaanquish:20170927153404p:plain


Add Configurationで新規設定作成
f:id:vaaaaaanquish:20170927153439p:plain


通知したいチャンネルやDMを選ぶ
f:id:vaaaaaanquish:20170927153546p:plain


次に進んだ所で表示されたURLにメッセージをPOSTするだけ
f:id:vaaaaaanquish:20170927153642p:plain


 

- Pythonスクリプト -

適当にrequestsモジュールとか使う
入って無ければpipで入れる

pip install requests
import requests
import json
post_url = "https://hooks.slack.com/services/T04………"

def post_slack(name, text):
    requests.post(
        post_url,
        data=json.dumps(
            {"text": text,
             "username": name,
             "icon_emoji": ":python:"}))

post_slack("自動ポスト", "これはテストです")


icon_emojiなどはよしなに。
これでこんな感じ。
f:id:vaaaaaanquish:20170927153921p:plain


 

- おわりに -

機械学習スクリプト終わった時みんなどうやって知るんだろ。

これ以上、特筆すべき事項はありません。