Donc, ce que j'essaie de faire ici, c'est obtenir les en-têtes d'une URL donnée pour pouvoir déterminer le type MIME. Je veux pouvoir voir si http://somedomain/foo/
renverra un document html ou une image jpg par exemple. Je dois donc trouver comment envoyer une requête HEAD pour pouvoir lire le type MIME sans avoir à télécharger le contenu. Est-ce que quelqu'un connaît un moyen facile de le faire?
Réponses
Trop de publicités?
doshea
Points
1095
urllib2 peut être utilisé pour effectuer une requête HEAD. C'est un peu mieux que d'utiliser httplib puisque urllib2 analyse l'URL pour vous au lieu de vous demander de diviser l'URL en nom d'hôte et chemin.
>>> import urllib2
>>> class HeadRequest(urllib2.Request):
... def get_method(self):
... return "HEAD"
...
>>> response = urllib2.urlopen(HeadRequest("http://google.com/index.html"))
Les en-têtes sont disponibles via response.info () comme précédemment. Fait intéressant, vous pouvez trouver l'URL vers laquelle vous avez été redirigé:
>>> print response.geturl()
http://www.google.com.au/index.html
Paweł Prażak
Points
1054