52得票7回答
PIL无法识别io.BytesIO对象的图像文件

我正在使用Pillow的分支来代替PIL,在打开图像时不断收到以下错误信息: OSError: 无法识别图像文件 <_io.BytesIO object at 0x103a47468> 我正在使用Python 3.4和没有安装PIL的virtualenv。 我已经尝试根据其...

7得票3回答
使用xlrd打开BytesIO中的xlsx文件

我正在使用Django并需要读取上传的xlsx文件的工作表和单元格。虽然使用xlrd应该是可行的,但由于文件必须保留在内存中且可能不能保存到位置,我不确定如何继续进行。 在这种情况下,起点是一个带有上传输入和提交按钮的网页。当提交时,文件被捕获并发送到一个处理类中,该类必须提取所有重要数据以...

32得票1回答
对StringIO、cStringIO和ByteIO感到困惑

我已经在谷歌和SO上搜索了这些缓冲模块的区别。但是,我仍然不太理解,而且我认为我读到的一些帖子已经过时了。 在Python 2.7.11中,我使用r = requests.get(url)下载了一个特定格式的二进制文件。然后,我将StringIO.StringIO(r.content)、cS...

117得票3回答
在内存中写入并读取字节(BytesIO),结果为空白

我想尝试一下 Python 的 BytesIO 类。作为一个实验,我尝试将数据写入内存中的 zip 文件,然后从该 zip 文件中读取字节。因此,我将gzip函数中的文件对象更改为 BytesIO 对象。以下是整个脚本:from io import BytesIO import gzip #...

13得票4回答
奇怪的“BadZipfile: Bad CRC-32”问题

这段代码是一个 Django 应用程序中的简化版本,它通过 HTTP 多部分 POST 接收上传的 zip 文件,并对其中的数据进行只读处理:#!/usr/bin/env python import csv, sys, StringIO, traceback, zipfile try: ...

16得票2回答
我能否在Python中将io.BytesIO()流传输到subprocess.popen()?

我想使用subprocess.popen()将io.BytesIO()的字节流传输到另一个程序,但我不知道如何实现或者是否可能。文档和示例都是关于文本和换行符的。当我使用以下代码时:import io from subprocess import * stream = io.BytesIO(...

9得票2回答
为什么TextIOWrapper会关闭给定的BytesIO流?

如果在Python 3中运行以下代码: from io import BytesIO import csv from io import TextIOWrapper def fill_into_stringio(input_io): writer = csv.DictWriter...

80得票4回答
在Python3.6中如何将'_io.BytesIO'转换为类似于bytes的对象?

如果HTTP响应体使用gzip、compress或deflate进行了压缩,我将使用此函数来解压缩它。def uncompress_body(self, compression_type, body): if compression_type == 'gzip' or compress...

10得票1回答
使用BytesIO读取csv文件的pandas方法

我有一个类似于文件的BytesIO对象,其中包含CSV数据。我想将它读入Pandas dataframe中,而不需要在中间写入磁盘。 最小工作示例 在我的使用情况中,我直接将文件下载到了BytesIO中。对于这个最小工作示例,我将文件存储在磁盘上,将其读入BytesIO,然后将其读入Pan...

40得票3回答
Python io.BytesIO的write()、read()和getvalue()方法是如何工作的?

我试图理解 io.BytesIO 的 write() 和 read() 方法。我的理解是,我可以像使用文件对象一样使用 io.BytesIO。import io in_memory = io.BytesIO(b'hello') print( in_memory.read() ) 上面的代码将如...