Probleme avec Curl

Probleme avec Curl - PHP - Programmation

Marsh Posté le 14-05-2005 à 09:16:41    

Bonjour,
 
ça fait deja un moment que j'entends parler de la lib curl et de toutes les belles choses qu'on peut faire avec, j'ai donc décidé de faire quelques petits scripts pour prendre la mains, parceque apres avoir lu la doc ... c'est vrai qu'on peut faire plein de belles choses  :D .
 
Donc j'ai essayer en 1er lieu de creer un "auto-identificateur" sur un site, de la sorte que je puisse recuperer une info qui se trouve dans la partie securizée du site. Pour le faire je me suis loggé "manuellement" en enregistrant les headers envoyés avec firefox, le resutat :
 

Citation :


 
https://monsite/mapage.asp?login
 
 
 
POST /mapage?login HTTP/1.1
 
Host: www.monsite.ch
 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.7.7) Gecko/20050421 Firefox/1.0.3 (Debian package 1.0.3-2)
 
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
 
Referer: https://www.monsite/mapage.asp?initiate
 
Cookie: JSESSIONID=ssx96jgcv2; ARPT=ONZZKJS10.148.24.44CKUIU; ASPSESSIONIDSCSSCRCC=BOKHNNKCFNAHPHJJPKPAFBMD; MenuIds=-N1_64; MenuSelectID=1_64; LastSelectedID=1_64; IsiWeb23mobile=UNoiZEKFoX9NXQADG8SfiE9sfHjo9KoexLoTl0TfSmZZQQFOFQTTh6ntMR8/y4c/fjszbWnAMdtr7IXmzzQpzD8ocbgpAf9H4Tq47iDuGumjHoV+MpZyX3pFrZx+YjTIErM26PayehukqnLhE9hLtKN5+/lsUgpYrMdfYv6Qz7BcgR7wH4eoQBgMjd9+3GWfp28OMVYZVB9v/sHm06iATwfMUMa3XRfTT+jQxQ==; ASPSESSIONIDQASRCQDD=MGKBONKCHFBEEPLGMMAJJJAI; ASPSESSIONIDACBAAABS=HOMPDOKCFLHOADDHDIMEJIMK
 
Content-Type: application/x-www-form-urlencoded
 
Content-Length: 198
 
isiwebuserid=monlogin&isiwebpasswd=monmdp&isiwebjavascript=No&isiwebappid=12&isiwebmethod=authenticate&isiweburi=monsite.asp&isiwebargs=&login.x=28&login.y=16
 
HTTP/1.x 302 Found
 
Date: Sat, 14 May 2005 06:58:59 GMT
 
Set-Cookie: IsiWeb=UNoiZEKFobNVRAAEf0tMGrtEUhJmz4hqbYxly7Fwh7KWqJc00ETDSlVdi+yjgV6B8gjo9j7Pf2a+IqD9Qae1zbf/umnKxupvzYhvdfyI3wIztgE/4N7H+NZMuAXuNkgFhSfveq3KpyjQ3pKPoyXthwmD8//0gxeDy9nPsRee3xYDGFeX+Jr8+jS2+jtPLculZ5Z6D6JWPiOkwj4JKrs77VRlYYwYSBfhan9V2A==; path=/; secure
 
Location: /mapage.asp
 
Connection: close
 
Content-Type: text/html
 
 


 
 
Et j'ai forgé ce script pour l'emuler :
 

Code :
  1. $file = fopen('cookies/cookie','w+');
  2. fwrite($file,'Set-Cookie: IsiWeb=UNoiZEKFn7FTGwACCCiZ1nETEUZQmzm3jNhOSixCwivSIlLpyAl980oSNzMq282aoaThzvqvQ/fnUYeWXJMMWdt1qXM9cN46ffPgmTk3xAWHDt7aCJ90nwAHyKHG4Hr1PNZNYnIrv8ocTEncEmpBQwGXG1C2ceO4IqJ/uEfT+KPgF+GbuNuR8KgtRWA36LqwCD7uZ4G1MtzeZBgGVr6GhWfSFu2bf1El8eEGhw==; path=/; secure');
  3. $curl = curl_init('https://www.monsite/mapage.asp?login');
  4. $file = fopen('resumé.txt','w+');
  5. curl_setopt($curl,CURL_FOLLOWLOCATION,TRUE);
  6. curl_setopt($curl,CURLOPT_POST,TRUE);
  7. curl_setopt($curl,CURL_COOKIEJAR,'/test/cookies/');
  8. curl_setopt($curl,CURLOPT_COOKIEFILE,'cookies/cookie');
  9. curl_setopt($curl,CURLOPT_POSTFIELDS,'isiwebuserid=monlogin&isiwebpasswd=monmdp&isiwebjavascript=No&isiwebappid=12&isiwebmethod=authenticate&isiweburi=monsite.asp&isiwebargs=&login.x=28&login.y=16');
  10. curl_setopt($curl,CURLOPT_VERBOSE,TRUE);
  11. curl_setopt($curl,CURLOPT_FILE,$file);
  12. curl_exec($curl);
  13. echo curl_error($curl);
  14. curl_close($curl);


 
Et si je regarde dans resumé.txt une fois que le script c'est terminé, je ne trouve pas la page sur laquelle je devrais arriver..
 
Voyez vous une explication?
 
Merci d'avance


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-05-2005 à 09:16:41   

Reply

Marsh Posté le 14-05-2005 à 15:36:21    

pti up ...


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-05-2005 à 21:23:10    

reup... c'est pas possible que personne connaisse ste fonction... elle est pourtant tellement .... cool :D... Bon si demain matin j'ai toujours pas eu de reponse je vais tout me taper avec la gestion des sockets ... SVP m'obbligez pas a re-inventer la roue :cry:


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-05-2005 à 22:23:00    

mets des controles un peu partout pour voir où ca coince :pt1cable:
Et sinon, tu n'es pas obligé de stocker le cookie dans un fichier texte? :??:  
 
 
curl je vais m'y mettre mais en python (j'ai des exemples, mais je suis totalement débutant dans ce langage, je veux l'apprendre car il est bien et on peut le compiler)
 
en php pour faire ca j'utilise la class PEAR Request, je la trouve vraiment facile à utiliser :)


Message édité par aspegic500mg le 14-05-2005 à 22:26:50
Reply

Marsh Posté le 14-05-2005 à 22:37:00    

Le truc c'est que ça ne génère pas d'erreurs, sinon ça serait signalé, c'est juste le resultat qui n'est pas celui attendu, donc je me demandais s'il y avait par exemple un parametre qui devait etre passé et que j'avais oublié. Par rapport a PEAR, je suis assez opposé a l'idée d'utiliser ce genre de truc parceque j'aime bien savoir exactement comment marche ce que j'utilise. Mais c'est simpas d'avoir proposé


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-05-2005 à 22:55:08    

esox_ch a écrit :

Le truc c'est que ça ne génère pas d'erreurs, sinon ça serait signalé, c'est juste le resultat qui n'est pas celui attendu, donc je me demandais s'il y avait par exemple un parametre qui devait etre passé et que j'avais oublié. Par rapport a PEAR, je suis assez opposé a l'idée d'utiliser ce genre de truc parceque j'aime bien savoir exactement comment marche ce que j'utilise. Mais c'est simpas d'avoir proposé


 
En meme temps tu sais pas non plus ce qui se passe dans curl :D
(le code de pear est aussi ouvert, tu peux aller voir dedans :) )
 
Tu trouve quel résultat avec ton script? (au lieu de?)

Reply

Marsh Posté le 14-05-2005 à 23:50:05    

Moi je vote pour le cookie qui n'est pas accepte.
 
Tu a pris, si je me trompe pas, le cookie que tu as obtenu lors de ton login via FF.
Or si le site ou tu essaye ca, a inclus ne serais-ce que quelques controle de bases, tu ne pourras pas reutiliser le meme cookie.
 
Je te conseille d'essayer de faire remplir le formulaire de login a ton script puis de te loguer (via ton script).

Reply

Marsh Posté le 15-05-2005 à 01:31:22    

Oui j'ai pensé a ça aussi, et j'ai dit a FF de bloquer les cookies ... probleme : j'arrive quand meme a me logger ...


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 17-05-2005 à 19:49:42    

Pour relancer un peu le sujet, je me demande si des personnes ont déjà utilisé cURL pour savoir si ils avaient reçu des mails sur MSN ? ( on se connecte à son compte et on parse la page...) ?  
J'aimerais bien savoir ça car si quelqu'un à déjà réussi, alors je peut toujours éssayer par moi-même. Mais si c'est mission impossible, autant ne pas perdre son temps...

Reply

Marsh Posté le 17-05-2005 à 20:55:11    

le probleme de msn c'est qu'il n'est pas du tout xhtml strict compilant ... donc impossible de parser ça a la xml ... Donc le seul moyen de s'en sortir c'est de faire un parser "fait main" ,avec le risque que s'ils changent une seule virgule sur leur site tu l'aies dans l'os


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 17-05-2005 à 20:55:11   

Reply

Marsh Posté le 17-05-2005 à 20:59:46    

Sinon, je pense éssayer de bidouiller un truc avec http://www.hypothetic.org/docs/msn/index.php. L'explication du protocol de MSN... ( Si vous avez de  la doc avec php, je suis preneur)
Bref, j'ai de l'espoir et ça me fait vivre :p
 
Sinon, esox_ch, tu en es où avec ton `auto-identificateur`

Reply

Marsh Posté le 17-05-2005 à 21:42:27    

Fait nous savoir pour msn :D  
 
La entre les cours (quand j'oublie pas d'y aller :p), mes entrainements de sports, les amis et le travail, j'ai peu de temps a consacrer a des tests malheureusement :(, mais j'espere que bientot ça ira mieux


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 17-05-2005 à 21:56:01    

esox_ch a écrit :

Fait nous savoir pour msn :D  
 
La entre les cours (quand j'oublie pas d'y aller :p), mes entrainements de sports, les amis et le travail, j'ai peu de temps a consacrer a des tests malheureusement :(, mais j'espere que bientot ça ira mieux


 
Je croie que malheureusement ce désastre touche tout le monde.... C'est pourquoi j'envie les insomniaques : je pourrais passer au moins 7 heures toute les nuits à programmer :love:  
 
Pour MSN, j'éspère que t'es pas pressé :sarcastic: (je vais quand même fouiller un peu plus google pour trouver de la bonne doc. D'ailleurs, google ne serait-il pas "surchargé" depuis deux ou trois jours ? Il a beaucoup de problèmes (chez moi en tout cas) à afficher le "résulat" (l'image google s'affiche à moitié, puis il rame, rame...))

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed