Python3からslackに投稿する方法
Python3からslackの任意のチャンネルに投稿する方法です。
簡単ですが覚え書きのためにまとめておきます。
手順
・slackのwebページからincoming WebhookのURLを発行する
・python3にslackwebをインストール
・適当なプログラムを作って投稿
incoming WebhookのURLを発行する
slackのincoming webhook 設定ページにアクセス
投稿したいチャンネル(#general とか)を選択したら
「着信Webフック インテグレーションの追加」をクリック
URLが発行されるので、これをコピーしておく
slack側の設定はこれだけ!かんたん!
Python3にslackwebをいれる
Python3にslackwebモジュールをインストールする。
他にもslackにpythonから投稿する方法は色々あるけど、モジュール化されててこれが一番楽(だと思う)
インストールはpipを使ってターミナルから
python3 -m pip install slackweb
pipが入ってない人は先にpipをいれておく
easy_install pip
Python3からslackに投稿
下準備はできたので、早速何か投稿してみる
import slackweb comment="Hello SlackPi" test=slackweb.Slack(url=" ココに発行されたincoming webhookのURL ") test.notify(text=comment)
slackweb.Slack
の中にさっき取得したURLを引数としていれる
あとはnotify
に投稿したい内容をいれるだけ。
作ったスクリプトを実行すると
こんな感じでincoming-webhookからのメッセージが届く
うーん、簡単だ・・・
おまけ
投稿したときに表示される名前とかアイコンも、incoming Webhook URLを設定したページから変更できます。
URLの取得だけで簡単に連携可能なので、色々と捗りそう。
長い計算プログラムが終わった時や、途中で止まった時にエラーメッセージをslackに投稿させるとか