2009-04-22 6 views
0

Je suis en train d'écrire un script python, et je veux trouver des informations sur un fichier, comme par exemple un mime-type (ou toute représentation utile de ce que contient un fichier).Informations sur le type de fichier

J'ai entendu parler de python-magic, mais je cherche vraiment la solution qui me permettra de trouver cette information, sans nécessiter l'installation de paquets supplémentaires. Est-ce que je suis bloqué pour maintenir une liste d'extensions de fichiers, ou est-ce que python a quelque chose dans la bibliothèque standard? Je n'ai pas réussi à le trouver dans les docs.

+0

double: http: // stackoverflow.com/questions/43580/how-to-find-the-mime-type-of-a-file-in-python –

Répondre

5

Je ne sais pas si vous voulez déduire quelque chose du contenu du fichier, mais si vous voulez savoir type MIME de l'extension de fichier mimetypes module sera suffisant

>>> import mimetypes 
>>> mimetypes.init() 
>>> mimetypes.knownfiles 
['/etc/mime.types', '/etc/httpd/mime.types', ... ] 
>>> mimetypes.suffix_map['.tgz'] 
'.tar.gz' 
>>> mimetypes.encodings_map['.gz'] 
'gzip' 
>>> mimetypes.types_map['.tgz'] 
'application/x-tar-gz' 

http://docs.python.org/library/mimetypes.html

1

La bibliothèque standard prend en charge mapping filenames to mimetypes.

Votre question semble aussi vous intéresser à d'autres informations en plus de mimetype. Le module stat vous donnera également des informations sur la taille, le propriétaire, l'heure de la dernière modification, etc., sinon les systèmes de fichiers les plus courants (Windows NTFS/FAT, Linux Ext 2/3, Mac OS X) ne stockent pas de métadonnées ou informations "sur les fichiers. C'est pourquoi nous devons utiliser des extensions pour trouver le type MIME par exemple.

Questions connexes