Comment authentifier un site avec Python à l'aide de urllib2?
Après beaucoup de lecture ici sur Stackoverflow ainsi que sur le web j'ai encore des difficultés à obtenir des choses à travailler.
Mon défi: afin d'accéder à une partie restreinte d'un site internet dont je suis un membre à l'aide de Python et urllib2.
De ce que j'ai lu le code devrait ressembler à ceci:
mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
url = 'http://www.domain.com'
mgr.add_password(None, url, 'username', 'password')
handler = urllib2.HTTPBasicAuthHandler(mgr)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)
try:
response = urllib2.urlopen('http://www.domain.com/restrictedpage')
page = response.read()
print page.geturl()
except IOError, e:
print e
L'impression de ne pas imprimer "http://www.domain.com/restrictedpage" mais spectacles "http://www.domain.com/login" donc, mes identifiants ne sont pas stockés ou traités et je suis redirigé.
Comment puis-je obtenir que cela fonctionne? J'ai essayé pendant des jours et continuez à frapper les mêmes impasses. J'ai essayé tous les exemples que j'ai pu trouver en vain.
Ma principale question est: est-ce qu'il est nécessaire de s'authentifier sur un site web à l'aide de Python et urllib2?
Petite question: ce que je fais mal?
Comment puis-je savoir? Je sais que sur la 401 en-têtes, mais je n'arrive pas à les capturer. Vous avez un exemple sur la façon de le faire manuellement?
OriginalL'auteur Roland | 2012-03-03
Vous devez vous connecter pour publier un commentaire.
D'abord vérifier manuellement ce qui se passe réellement lorsque vous êtes authentifié avec succès (instructions avec Chrome):
Puis installer "Advanced Client Rest (ARC)" extension Chrome
L'utilisation de l'ARC pour la construction d'un POSTE valide pour l'authentification.
Maintenant vous savez ce que vous avez dans vos en-têtes et les données de formulaire. Voici un exemple de code à l'aide de Requêtes qui ont travaillé pour moi pour un site en particulier:
OriginalL'auteur samuel5
Pour
HTTP Basic Auth
vous pouvez vous référer à ceci : http://www.voidspace.org.uk/python/articles/authentication.shtmlOriginalL'auteur Yugal Jindle