Simulation d'un post sur une page perl

icb3a Messages postés 4 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 12 juillet 2009 - 12 juil. 2009 à 23:50
sebcbien_bzh Messages postés 16 Date d'inscription lundi 22 septembre 2003 Statut Membre Dernière intervention 19 juin 2015 - 1 oct. 2009 à 11:38
Bonjour à toutes et tous,

Aujourd'hui ayant le cerveau en compote j'ai du mal à simuler un post sur une page web. Le but est de récupérrer des informations contenue dans la page web affichée après l'authentification.

Voici le code que j'utilise :

var
  TsX : TStringList;
begin
      TsX := TStringList.Create;
      TsX.Add('id=frmLog');
      TsX.Add('md5sum='+edit9.Text);
      TsX.Add('login='+edit6.Text);
      TsX.Add('password='+edit8.Text);
      TsX.Add('code='+edit7.Text);
      IdHTTP1.Request.From := 'frmLog';
      IdHttp1.Request.ContentType := 'application/x-www-form-urlencoded';
      listbox1.Items.Text := IdHTTP1.Post('http://www.easysurebet.com/login.pl',TsX);
      TsX.Free;
 end;

La page web est  :

<FORM action="login" method="post" onSubmit="return connect(this)" id="frmLog">
   <input type="hidden" name="md5sum" value="7bca41fd61049dfdec8165f2d6376323">
   <TD><input type="text" name="login" class="input" size="18"></TD>
   <TD><input type="password" name="password" class="input" size="12"></TD>
   <TD><img src="captcha/7bca41fd61049dfdec8165f2d6376323.png" width="95" height="23"></TD>
   <TD><input type="text" name="code" class="input" style="height:20" size="8" maxlength="6"></TD>
   <TD><input type="image" src="images/ok.png" border="0"></TD>
</FORM>

J'ai viré les éléments inutiles de mon code et de la page web.... d'ou certaines incohérence sur le code html (des TD mais pas de table, etc ...).

Merci d'avance pour vos proposition.

Icb3@

1 réponse

sebcbien_bzh Messages postés 16 Date d'inscription lundi 22 septembre 2003 Statut Membre Dernière intervention 19 juin 2015
1 oct. 2009 à 11:38
salut, avec du retard , voila ce qui marche chez moi :
Webbrowser1.OleObject.Document.all.tags('FORM').item(0).item('login').value:='moi';
Webbrowser1.OleObject.Document.all.tags('FORM').item(0).item('pass').value:='motdepasse';

a changer le nom de ton composant webbrowser (Webbrowser1) chez moi la rubrique 'login' et 'pass' , sur ton site ca sera peut etre autre chose et bien sur les valeur'moi' et 'mot de passe' qui correspondent aux réponses voulues.

en espérant t'avoir aider pour remplir un formulaire web.

vous pouvez visiter mon site : http://www.sebcbien.com
0
Rejoignez-nous