gpt4 book ai didi

Python:无法从 FileStorage 对象读取

转载 作者:行者123 更新时间:2023-12-01 08:58:02 32 4
gpt4 key购买 nike

我有一个 .xlsx 文件,并将其转换为 .csv 文件。然后我将 .csv 文件上传到我编写的 Python 脚本中,但抛出错误。

由于文件是通过 HTTP 上传的,因此我使用 file = request.files['file'] 访问它。这将返回一个 FileStorage 类型的文件。在我尝试使用 StringIO 对象读取它之后,如下所示:

io.StringIO(file.stream.read().decode("UTF8"), newline=None)

我收到以下错误:

TypeError: initial_value must be str or None, not bytes

我还尝试通过这种方式读取FileStorage对象的文件:

file_data = file.read().decode("utf-8")

我收到以下错误:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position 97: invalid start byte

也许值得注意的是,我可以使用以下代码直接读取该文件,即作为 csv 文件:

with open('file_path', 'r') as file:
csv_reader = csv.reader(file, delimiter=";")
...

但是由于我试图从上传按钮获取文件,即 file 类型的 input HTML 元素,如上所述,我得到了FileStorage 对象,我无法读取它。

有人知道我该如何解决这个问题吗?

提前谢谢您!

最佳答案

可能不是用 utf-8 编码的。尝试将其解码为 latin-1:

file_data = file.read().decode("latin-1")

关于Python:无法从 FileStorage 对象读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52666182/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com