pythonの実行結果をslackで受け取る方法

この記事は約3分で読めます。

普段コードエディターでコーディングをしますよね。しかし、コードエディターを閉じると実行結果は消えてしまいます。

実行した結果をまとめておきたいですよね。今回はslackで結果を受け取る方法について紹介します

webhookを発行する

まず、slackのwebhookを発行しましょう。

webhookは、アプリケーションなどが提供する、情報をやり取りする手段です。
基本的に何かあれば(if)、何をする(do)を繋げることにつかわれます。
LINE だったら、ユーザが登録した時(if)に、初期メッセージ(do)を送る

今回は、pythonファイルが実行

slackのwebhook URL作成ページ | https://slack.com/services/new/incoming-webhook

slackにログインし、メッセージを投稿するチャンネルを選択します。

webhookが発行されます。

発行されたwebhookの下部分で、名前、アイコンの設定が出来ます。

コーディング

pythonファイルを作成しましょう。

requestのpostを使い、slackへ通知を送ります。

def send_slack_notification(webhook_url, message):
    payload = {"text": message}
    headers = {"Content-Type": "application/json"}

    try:
        response = requests.post(webhook_url, data=json.dumps(payload), headers=headers)
        response.raise_for_status()
        print("Slack通知が成功しました。")
    except requests.exceptions.RequestException as err:
        print(f"Slack通知エラー: {err}")

payloadで”username”、”icon_url”で上書きすることも出来ます。

if __name__ == "__main__":
    # 作成したWebhook URL
    webhook_url = "https://hooks.slack.com/xxxxxxxxx/xxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxx"
    
    # 送りたいメッセージ
    message = "これはテストメッセージです。"

    # Slackに通知を送信
    send_slack_notification(webhook_url, message)

関数の引数に先ほどのwebhook、送りたいメッセージを与え、実行するとslackに通知が送れます。

これで、実行した結果をslackに送信することができますね。

まとめ

今回は、pythonの実行結果メッセージをslackに送信する方法について紹介しました。

次回は、このpythonファイルをオンライン上で定期実行する方法について記事にしたいと思います。

コメント

タイトルとURLをコピーしました