Question

In linux, we have a utility called “file”, which helps us to determine the identification of a file. Is there any python module that can do the same job?

I don't prefer to use subprocess.Popen(['file', 'blah.blah']), because it is platform dependent. For instance, windows do not have “file” (although it can be downloaded).

Was it helpful?

Solution

Ignacio mentioned the Magic library, but you could also do it with the standard library if you're confident that the filename is enough to know the file type from (by extension):

>>> import mimetypes
>>> mimetypes.guess_type('__init__.py')
('text/x-python', None)

See the Mimetypes module in the standard library. This however isn't a replacement for actually inspecting the content of the file and figuring out its type.

OTHER TIPS

magic

Don't forget the DLL.

There are standard modules imghdr and sndhdr for graphic and sound files, respectively.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top