Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

PythonスクリプトからSlackにファイルを投稿する

More than 1 year has passed since last update.

Python と Slack API の学習がてら、サンプルプログラムを書いてみました。

解決したい課題

サーバ上の Pythonスクリプトを実行して、SlackのChannelに添付ファイルを投稿したい

実装例

# coding:utf-8
import requests

TOKEN = 'Bot用のAPI token を入れてください'
CHANNEL = 'Channel IDを入れてください'

files = {'file': open("送りたいファイルをフルパスで記載", 'rb')}
param = {
    'token':TOKEN,
    'channels':CHANNEL,
    'filename':"filename",
    'initial_comment': "initial_comment",
    'title': "title"
}
requests.post(url="https://slack.com/api/files.upload",params=param, files=files)

実行例

$ python server2slack.py

その他

pip を使って requests を導入しておきましょう

$ curl -kL https://bootstrap.pypa.io/get-pip.py | python
$ pip install requests

・Bot用のAPI token は App ディレクトリ から Botsを作成して、Botsの管理画面から取得してください

・Channelをブラウザで開いて、https://xxx.slack.com/messages/{ChannelID} が Chennel ID です。

・Private Channelに投稿したい時は、BotをそのChannelに /invite するのを忘れずに。

参考

プログラムからSlackに画像投稿する方法まとめ
pipのインストール方法

kentarok
投稿内容は私自身の見解であり、所属する団体・組織の立場、戦略、意見を代表するものではありません
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away