On 03/08/2012 05:28 PM, Tobiah wrote:
<snip>
I should simplify my question. Let's say I have a string
that contains image data called 'mystring'.
I want to do
mime_type = some_magic(mystring)
and get back 'image/jpg' or 'image/png' or whatever is
appropriate for the image data.
Thanks!
Tobiah
I have to assume you're talking python 2, since in python 3, strings
cannot generally contain image data. In python 2, characters are pretty
much interchangeable with bytes.
Anyway, I don't know any way in the standard lib to distinguish
arbitrary image formats. (There very well could be one.) The file
program I referred to was an external utility, which you could run with
the multiprocessing module.
if you're looking for a specific, small list of file formats, you could
make yourself a signature list. Most (not all) formats distinguish
themselves in the first few bytes. For example, a standard zip file
starts with "PK" for Phil Katz. A Windows exe starts with "MZ" for
Mark Zbikowsky. And I believe a jpeg file starts hex(d8) (ff) (e0) (ff)
If you'd like to see a list of available modules, help() is your
friend. You can start with help("modules") to see quite a long list.
And I was surprised how many image related things already are there. So
maybe there's something I don't know about that could help.
--
DaveA
--
http://mail.python.org/mailman/listinfo/python-list