如何与imghdr一起使用stringio来确定图像是否有效
我把图像加载到

image_file = StringIO(open("test.gif",'rb').read())
imghdr.what(image_file.getvalue())

    print imghdr.what(image_file.getvalue())
  File "/usr/lib/python2.7/imghdr.py", line 12, in what
    f = open(file, 'rb')
TypeError: file() argument 1 must be encoded string without NULL bytes, not str

最佳答案

imghdr.what接受可选的第二个参数。如果指定了该参数,则忽略第一个参数,并假定第二个参数包含图像字节。
因此您可以更改以下行:

print imghdr.what(image_file.getvalue())

使用:
print imghdr.what(None, image_file.getvalue())

08-19 19:43