📨

Pythonでslackを使う(2): slackでtqdm

2022/12/08に公開

結論

zsh

(venv)% pip install tqdm  (or pip install --upgrade tqdm )

python

import time  # demo
from tqdm.contrib.slack import tqdm
for i in tqdm([1,2,3,4,5], token = '{token}', channel = '{channel}'):
    print(i)
    time.sleep(1) # demo

内容

本記事は以下の続きです。

https://zenn.dev/sergicalsix/articles/f7ad91d1d7cd04

ライブラリ(slack_sdk)やslack APIについてはこちらをご覧ください。

さて、[1]でプログラムの実行過程を任意のタイミングでslackに出力できる手法を学びました。
本記事ではリアルタイムにプログラムの実行過程を把握できるtqdmをslackで使ってみます。

流れは以下です。

  1. slackアプリの環境設定
  2. tqdmのインストール
  3. プログラム

0.slackアプリの環境設定

  1. slackのワークスペースを作成
  2. tqdmから連絡を受け取りたいチャンネルを作成
  3. slack APIで設定したアプリ(Bot)を該当のチャンネルに追加[1]

1.tqdmのインストール

tqdmは割と使っている人も多いと思うので、イントールされている方はupdateしましょう。

(venv)% pip install tqdm  (or pip install --upgrade tqdm )

2.プログラム

import time # demo
from tqdm.contrib.slack import tqdm
for i in tqdm([1,2,3,4,5], token = '{token}', channel = '{channel}'):
    print(i)
    time.sleep(1) # demo

tokenは直書きせず環境変数で書くと良い

$ export SLACK_API_TOKEN="hogehoge"
import os
for i in tqdm([1,2,3,4,5], token = os.environ['SLACK_API_TOKEN'], channel = '{channel}'):
    # 処理

最後に

Pythonでslackを使うシリーズは次回で終わります。
ご期待があればLINEやNotion APIなども使っていくので、コメントいただけるとありがたいです!!

関連

https://zenn.dev/sergicalsix/articles/f7ad91d1d7cd04

参考

[1] https://encr.jp/blog/posts/20200311_morning/

Discussion