Determine image in memory

837 Views Asked by At

I want to determine if a buffer I have (downloaded it) is an image file, without saving it to the disk. I looked it up and found out that:

  1. imghdr can do it only for files.
  2. python-magic can give me the file type, but than I need to map it to image types.

Is there a better way?

1

There are 1 best solutions below

0
On BEST ANSWER

As per the documentation, you can identify the file type with imghdr via a byte stream (which you should be able to get from your buffer)

import imghdr
imghdr.what('', byte_stream)

If you supply the second parameter the filename will be ignored.