Pythonで作業効率化

Python+requestsでSlackからファイルをダウンロードする

本記事は、PythonでSlackからファイルをダウンロードする方法について紹介する記事です。

具体的には以下の通り。

・Python+requestでSlackからファイルをダウンロードする方法
・Python+requestのファイルダウンロード実装例

「slacker」ライブラリではファイルのダウンロードができないようなので、requestライブラリでの実装方法を紹介します。

Python+requestでSlackからファイルをダウンロードする方法

SlackからPythonでファイルをダウンロードする方法はいくつかありますが、今回は「requests」ライブラリを使用してダウンロードする方法を紹介します。

requestsライブラリでSlackからファイルをダウンロードする

SlackからファイルをダウンロードするためにはAPIトークンの取得が必要です。

手順は以下の通りです。

1.Slackのappページに移動
2.Hubotで検索
3.Hubotをインストールする
4.Hubotの詳細を開いてAPIトークンの欄を確認する

手順の4で確認したAPIトークンを実装の時に使用します。

詳細の方法については「SlackbotのAPIトークンを取得する(動画あり)〜Hubotのインストール〜」をお読みください。

取得したAPIトークンは「headers」の「Authorization」に指定します。

続いてダウンロードしたファイルのURLを調べましょう。
Slackで対象ファイルのメニューを開いて「ファイルのリンクをコピー」をクリックすることでURLをコピーできます。

1.ファイルのその他をクリック
SlackファイルのURL1

2.「ファイルのリンクをコピー」をクリック
SlackファイルURL2

◆記述例

ダウンロードしたファイルを保存する

requestライブラリだけではダウンロードしたファイルを保存できません。
ファイルを保存するためには、codecsなどのファイル制御ライブラリでファイルに書き込む必要があります。

◆ファイルを保存する処理の記述例
codecsなどファイル制御ライブラリを使用して書き込めば保存できます。
openのオプションは「wb(バイナリーで書き込み)」を指定します。

Python+requestのファイルダウンロード実装例

ダウンロードクラスの実装例は以下の通りです。

◆ダウンロードクラスの実装例

以上、Slackからファイルをダウンロードする方法でした。

関連記事>>【Python】slackerでファイルをアップロードする

Pythonでできること・勉強方法まとめ

こちらの記事も読まれています

  • この記事を書いた人

みやびの

住んでいるところ:神奈川県。 プログラミング歴は13年ほど。 ※プログラミングに関する無料相談・質問への回答は行っていません。

-Pythonで作業効率化

Copyright© みやびのどっとぴーわい , 2024 All Rights Reserved Powered by AFFINGER5.