2011-02-23 3 views

Répondre

3

Un objet urllib2.Request fournit une méthode geturl(), qui retourne l'URL complète d'une demande. Vous pouvez ensuite le passer à urlparse.urlparse(), qui divise une URL en six composants de chaque URL. Vous pouvez ensuite accéder à la partie de la requête via l'attribut query.

Un exemple:

>>> from urllib2 import urlopen 
>>> from urlparse import urlparse 
>>> req = urlopen('http://capitalfm.com/?foo=bar') 
>>> req.geturl() 
'http://www.capitalfm.com/?foo=bar' 
>>> url = urlparse(req.geturl()) 
>>> url.query 
'foo=bar'
0

On peut supposer que si vous utilisez urllib2, vous avez déjà l'URL à portée de main. Afin d'extraire la chaîne de requête d'une URL, vous pouvez utiliser la fonction pratique urlparse dans python 2 (la fonction a été déplacée vers un autre module dans python 3).

>>> from urlparse import urlparse, parse_qs 
>>> url = 'www.example.com/file.php?id=2' 
>>> urlparse("www.example.com/file.php?id=2").query 
'id=2' 
>>> 
Questions connexes