管理人Kのひとりごと

デジモノレビューやプログラミングや写真など

SlackのIncoming WebhookへPythonで投稿する(python)

前回☟の続き

算出した値を何らかの形でプッシュ通知したかったので、最近興味を持ったSlackの勉強を兼ね、Slackへ投稿してみることにしました。
Slackへ投稿する手段はいくつかあるそうなのですが、Incoming Webhookが楽そうなので、それを利用することに。

Incoming Webhookの登録

画像取り忘れでございます...
ホーム画面左メニューの「APPS」からどうにかたどり着きましたよ。
投稿チャンネルを選択し、投稿用URLを取得します(取扱注意!)

pythonでjsonを投稿する

Incoming Webhookは所定のURLにJSONをPOSTします☟
(参考記事2つ目をほぼそのまま使わせていただきました)

#!/usr/bin/python
# -*- encoding:utf8 -*-

import sys
import requests
import json

def post_json(post_url,msg,channel='#general',username='me',icon_emoji=':alien:'):
    json_msg = json.dumps({
                               'text'      : msg,
                               'channel'   : channel,
                               'username'  : username,
                               'icon_emoji': icon_emoji,
                           })

    requests.post( post_url
                  ,data = json_msg
                 )

if __name__ == '__main__':
   args = sys.argv
   post_json('https://hooks.slack.com/services/XXXXXXXXX/XXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',args[1])

参考にした記事