我想使用 Slack API 和 Python 将文件上传到 Slack。我尝试使用网络钩子,但它没有帮助我发送文件。我只能发送消息,但不能发送文件。有没有办法实现文件上传?
最后,这对我有用。
步骤
url = "https://slack.com/api/files.upload"
headers = {
"Authorization":"Bearer xxxx", ----> this is the token you receive from oauth & permissions. It generally starts with xox
}
payload = { "channels":"channelXYZ"}
file_upload = {
"file":("./hello-world.txt",
open("./hello-world.txt", 'rb'), 'text/plain')
}
response = requests.post(url, headers=headers, files=file_upload, data=payload)
使用单个 files.upload API 无法完成文件上传。
1.使用files.upload API上传文件。 2.从结果中检索上传文件的链接。 3.获取文件链接后,使用chat.postMessage将上传的文件以文本格式发送到频道。
这是完成的代码(python slack-sdk) https://github.com/password123456/slack_api_example/tree/main/send_a_file_to_the_channel