J'ai besoin de lire l'URL actuelle avec la chaîne de requête que j'ai utilisée?Comment obtenir le (URL en cours + chaîne de requête) en utilisant le code python avec urllib2?
moyens je dois obtenir la barre d'adresse actuelle navigateur url ..
J'ai besoin de lire l'URL actuelle avec la chaîne de requête que j'ai utilisée?Comment obtenir le (URL en cours + chaîne de requête) en utilisant le code python avec urllib2?
moyens je dois obtenir la barre d'adresse actuelle navigateur url ..
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'
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'
>>>
De quel navigateur espérez-vous obtenir l'URL? (par exemple Firefox, Chrome, etc.) Il semble que ce n'est pas beaucoup avec urllib2 ... –
Cette question n'a aucun sens pour moi. –