首页 > 解决方案 > 为什么excel文件上传为zip文件?

问题描述

我有一个名为 的 excel 表last_run.xlsx,我使用一个小的 python 代码将其上传到 slack,如下所示:

import os
import slack

token= XXX
client = slack.WebClient(token=slack_token)

response = client.files_upload(
        channels="@viktor",
        file="last_run.xlsx")

但是当我在 slack 上收到它时,它是一个奇怪的 zip 文件,而不是一个 excel 文件了......知道我做错了什么吗?

标签: pythonexcelslackslack-api

解决方案


Excel 文件实际上是 XML 文档的压缩集合。因此,出于这个原因,Slack 的自动文件检测似乎将其识别为 ZIP 文件。

还手动将 xlsx 指定为filetype不会改变该行为。

如果您还指定一个filename. 然后它将被正确识别并上传为 Excel 文件。

代码:

import os
import slack

client = slack.WebClient(token="MY_TOKEN")

response = client.files_upload(
        channels="@viktor",
        file="last_run.xlsx",
        filename="last_run.xlsx")

对我来说,这看起来像是自动中的一个错误,所以我建议向 Slack 提交一份关于此行为的错误报告。


推荐阅读