如何在MongoDB中使用Gridfs与PIL(Python图像库)

4 投票
1 回答
1829 浏览
提问于 2025-04-16 10:42

我在用MongoDB,并把文件存储到GridFS里。

现在我想从GridFS中编辑这些图片……

我用了这段代码:

def thumbnail(file_obj):
    import StringIO
    from PIL import Image

    im = StringIO.StringIO()

    im.write(file_obj.raw_file)

    im_ful = Image.open(im)

    return im_ful.info

但是PIL(一个处理图片的库)说“无法识别这个图片文件”。

那张图片也是这样;怎么才能解决这个问题呢?

1 个回答

6

在调用 Image.open(im) 之前,你需要先执行 im.seek(0)。否则,PIL(Python图像库)会尝试从文件的末尾读取数据,但那时候没有数据可读,所以就会出错。

撰写回答