Bonjour, j'aimerais simuler les requetes http de mon naviguateur en perl afin qu'il m'automatise certaines taches.

Mais je bloque au formulaire de login

J'ai sniffer mes paquets pour essayer de voir d'ou venait le problème :


Requete de mon naviguateur

POST /login_redirige.php HTTP/1.1

Host: *****.fr

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1) Gecko/20061010 Firefox/2.0

Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5

Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3

Accept-Encoding: gzip,deflate

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

Content-Type: application/x-www-form-urlencoded

Content-Length: 113



Variable=http://*****.fr/***/&login=*****&password=******&Submit=Login&mail=cache
HTTP/1.1 200 OK

Date: Mon, 13 Nov 2006 06:15:45 GMT

Server: Apache/2.0.54 (Debian GNU/Linux) mod_fastcgi/2.4.2 PHP/4.3.10-16

X-Powered-By: PHP/4.3.10-16

Content-Length: 393

Keep-Alive: timeout=15, max=100

Connection: Keep-Alive

Content-Type: text/html



<body bgcolor="#25333D">

<form name="mulogin" method="post" action="http://*****.net/***/login_action.php" target="_parent">
<input name="login" id="login" type="hidden" value="*****">
<input name="passs" id="passs" type="hidden" value="***">
<input name="mail" id="mail" type="hidden" value="cache">

</form>

<body onload="javascript:document.forms.mulogin.submit();">

etc...(connexion réussi)

Requete de mon script perl :

POST /login_redirige.php HTTP/1.1

Host: *******.fr
Accept: */*
Connection: keep-alive
Variable=http://*****.fr/***/&login=*****&password=******&Submit=Login&mail=cache


HTTP/1.1 200 OK

Date: Mon, 13 Nov 2006 06:14:51 GMT

Server: Apache/2.0.54 (Debian GNU/Linux) mod_fastcgi/2.4.2 PHP/4.3.10-16

X-Powered-By: PHP/4.3.10-16

Content-Length: 221

Keep-Alive: timeout=15, max=100

Connection: Keep-Alive

Content-Type: text/html



<body bgcolor="#25333D">
<script language=javascript> alert ("Vous avez oubli. de remplir un champ.");</script><script language="javascript" type="text/javascript">
<!--

window.location.replace("index.php");
-->
</script><html>
etc... (redirection page d'acceuil sans être loger)
Je ne comprends pas pourquoi je n'obtient pas le mème resultat pour deux requetes semblables.


Pour infos voici mon script perl:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use IO::Socket;
$socket = IO::Socket::INET->new(Proto => "tcp", PeerAddr => "******.fr", PeerPort => "80") || die "\n+ Connection failed...\n";
print $socket "POST /login_redirige.php HTTP/1.1\r\n";
print $socket "Host: ******r\n";
print $socket "Accept: */*\n";
print $socket "Connection: keep-alive\n\n";
print $socket  "
 
 
Variable=http://*****.fr/***/&login=*****&password=******&Submit=Login&mail=cache\n\n";
print "+ Connected!...\n";
#Getting
while($answer = <$socket>) {
 
 
printf $answer;
 
}
Merci