2010-11-25 41 views
2

Par exemple, je veux télécharger cette page après avoir inséré le nom d'utilisateur et mot de passe:Comment télécharger une page Web qui nécessite un nom d'utilisateur et un mot de passe?

http://forum.ubuntu-it.org/ 

Je tryed avec wget, mais ne fonctionne pas.

Existe-t-il une solution avec python?

Vous pouvez tester avec ces nom d'utilisateur et mot de passe:

username: johnconnor 
password: hellohello 
+1

double possible de [wget avec l'authentification] (http://stackoverflow.com/questions/4272770/wget-with-authentication) – Gareth

+0

en double de tous ces: http : //stackoverflow.com/search? q =% 5Bpython% 5D + urllib2 + formulaire Aide à la recherche. Utilise le. –

+0

duplication possible de [Authentification Python avec urllib2] (http://stackoverflow.com/questions/1014570/python-authentication-with-urllib2) –

Répondre

1

Comme @robert dit, utilisez la mécanisation.

Pour vous aider à démarrer:

from mechanize import Browser 
b = Browser() 
b.open("http://forum.ubuntu-it.org/index.php") 
b.select_form(nr=0) 
b["user"] = "johnconnor" 
b["passwrd"] = "hellohello" 
b.submit() 

response = b.response().read() 
if "Salve <b>johnconnor</b>" in response: 
    print "Logged in!" 
+0

ce travail merci;) – xRobot

2

Essayez le module mechanize. C'est essentiellement une interface de navigateur programmatique.

2

Vous pouvez utiliser le module urllib2 et avec cela il est possible d'effectuer une authentification basique et basée sur un formulaire (avec la prise en charge des cookies).

Voici un bon tutorial sur votre problème.

+0

Je viens de l'essayer mais ça ne marche pas. Voir ci-dessus dans la question Je viens d'insérer le nom d'utilisateur et mot de passe pour tester si vous voulez :) – xRobot

+1

Aller avec mécaniser alors, comme d'autres semblent recommander cela. – user225312