#1 Le 28/03/2008, à 09:32
- Constantin
Remplissage de formulaire HTML par script
Bonjour à tous;
j'ai un problème avec un script python que j'écris pour tenter de me connecter automatiquement au site de ma banque. J'utilise pour cela le module mechanize.
La connexion se passe bien mais après cette page :
<html>
<head>
<title> </title>
</head>
<body BGCOLOR="#FFFFFF">
<p align="center"><font color="#000066" size="2" face="Arial, Helvetica, sans-serif"><strong>Connexion
en cours ...</strong></font></p>
<form ACTION="/scripts/authentification.dll?Abonne" NAME="IdentAbo" METHOD="POST">
<input type="hidden" name="banque" value="J">
<input type="hidden" name="abonne" value="Mon N°d'abonné">
<input type="hidden" name="passwd" value="Mon mot de passe">
</form>
<script LANGUAGE="JavaScript">
TimeoutID = setTimeout ("document.IdentAbo.submit()",0);
</script>
</body>
</html>
J'utilise un :
forms2 = ParseResponse(response3, backwards_compat=False)
form2=forms2[0]
response4 = mechanize.urlopen(form2.click())
print response4.read()
Et voilà ce que j'ai en retour :
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 2.0">
<title>Connexion invalide</title>
</head>
<body bgcolor="#FFFFFF">
<h2 align="center"><font color="#0E4096" size="4" face="Arial, Helvetica, sans-serif">Probl�me de connexion
</font></h2>
<center>
<p><FONT COLOR="#FF0000"><B><font color="9D0909" size="3" face="Arial, Helvetica, sans-serif">Vous
avez d�pass� le d�lai de votre session.</font></B></FONT></p>
<p><FONT COLOR="9D0909" size="3" face="Arial, Helvetica, sans-serif"><B>Vous devez
<U>FERMER</U> votre navigateur avant de tenter une nouvelle connexion.</B></FONT></p>
</body>
</html></body></html>
À noter que je n'ai jamais cette erreur avec firefox.
Je pense que c'est peut être à cause de la fonction javascript document.IdentAbo.submit() lancée dans la page précédente. Il me semble que mechanize ne lance pas ces fonctions et je ne vois pas comment faire.
Si quelqu'un a une idée.
Merci d'avance.
PS: je n'y connais rien en javascript... Désolé!
Hors ligne
#2 Le 28/03/2008, à 10:10
- philou8237
Re : Remplissage de formulaire HTML par script
Peut etre que le site de ta banque t'envoie un cookie de session quand tu te logues, que ton script ne récupère pas, et donc à la page suivante..... pas de cookie pas d'accès.
Hors ligne
#3 Le 28/03/2008, à 10:11
- azimuth024
Re : Remplissage de formulaire HTML par script
+1
Hors ligne
#4 Le 28/03/2008, à 11:10
- Constantin
Re : Remplissage de formulaire HTML par script
Il me semble (d'après la doc de mechanize) que les cookies sont automatiquement gérés et acceptés lors de l'utilisation de .urlopen.
J'ai eu un premier problème de ce genre avec une réponse du type : votre navigateur doit accepter les cookies pour pouvoir continuer et j'ai réussi à le régler.
Est-ce qu'il y a un moyen de vérifier les cookies acceptés ? Cela permettrai de vérifier si l'erreur vient tout de même de là.
Hors ligne
#5 Le 29/03/2008, à 20:09
- Constantin
Re : Remplissage de formulaire HTML par script
Un petit up pour la soirée!!
Hors ligne