해당 글은 이전 글 log 3에서부터 이어집니다.
이전에 다운로드된 태블로 이미지를 이제 슬랙 방으로 봇으로 보낼 차례입니다. 그러기 위해서는 슬랙에서 직접 봇을 만들고, 설정 몇 가지를 해야 합니다.
해당 api를 사용하려면, slack_sdk package가 필요하니, pip로 설치해줘야 한다.
from fileinput import filename
import os
from slack_sdk import WebClient
from slack_sdk.errors import SlackApiError
import time
# init slack client with access token
slack_token = 'YOUR TOKEN'
client = WebClient(token=slack_token)
start = time.time()
# upload file
filtering_list = ['filter1', 'filter2', 'filter3']
for filter_value in filtering_list:
try:
response = client.files_upload(
channels='channel_name',
file=f'{filter_value}.png', # path
filename=f'{filter_value}.png',
filetype='png'
)
print(response['ok'])
except SlackApiError as e:
# You will get a SlackApiError if "ok" is False
assert e.response["ok"] is False
assert e.response["error"] # str like 'invalid_auth', 'channel_not_found'
print(f"Got an error: {e.response['error']}")
print("time :", time.time() - start)
위의 구문을 이용하면 손쉽게 채널에 자신이 원하는 이미지를 슬랙봇을 통해 보낼 수 있다