Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/11/2010, à 01:28

smashmatt

Authentification sur un site web avec wget en bash .

Bonjour !

je souhaiterais récupérer le code source d'une page web a partir de son url . Le site requiert une identification . J'ai donc essayer avec Wget en sauvant et chargant les cookies , mais cela ne fonctionne pas . Le fichier cookies.txt est vide lorsque je sauve les cookies avec Wget ( que des commentaires a l'interieur du fichier ) . J'ai essayé de retrouver le cookie avec un logiciel et de creer un fichier texte avec les cookies que je possedais deja du site mais pareil ca ne fonctionne pas .
Comme réponse a ma commande , j'obtiens un fichier index.htm qui contient seulement le code source de la page d'accueil ( page d'authentification) . Je n'arrive pas a passer l'authentification !

Voici les commandes que j'ai essayé :

wget --post-data='user=login&password=pass' --save-cookies=cookies.txt --keep-session-cookies "http://www.**********.***/#####"

wget --load-cookies=cookies.txt "http://www.**********.***/#####"

wget --password=pass --user=login "url"

Le site en question est **********.***/#####

J'indique que le tout a été fait sous Cygwin .

Merci d'avance pour votre aide !


Edit : modification données personnelles

Dernière modification par xabilon (Le 01/02/2011, à 01:16)

#2 Le 09/11/2010, à 01:54

chopinhauer

Re : Authentification sur un site web avec wget en bash .

Tu peux oublier la troisième forme, car presque personne n'utilise pas l'authentification HTTP. Si tu regardes le formulaire de connexion (il faut regarder le code HTML de la page) c'est vers "http://www.**********.***/login.php" qu'il faut envoyer les requêtes. Donc fait :

wget --post-data="login=<ton_login>&password=<ton_mot_de_passe>" --keep-session-cookies --save-cookies cookies.txt http://www.**********.***/login.php

Remplace <ton_login> et <ton_mot_de_passe> par ton nom utilisateur et ton mot de passe respectivement.

Dernière modification par xabilon (Le 01/02/2011, à 01:17)


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#3 Le 09/11/2010, à 02:30

smashmatt

Re : Authentification sur un site web avec wget en bash .

Merci pour ta réponse rapide !
Effectivement , cela me permet d'avoir mon cookies.txt bien rempli .
Voici mon nouveau problème :
Le soucis , c est que j'obtiens un code source différent de celui de l'Enregistrer sous . Il me manque des informations sur le code source que j'obtiens grâce a Wget . Je ne sais pas comment faire pour obtenir le même code source .
Le code source obtenu avec wget est alors le même quelques soit la page du site affiché  .

#4 Le 09/11/2010, à 02:59

chopinhauer

Re : Authentification sur un site web avec wget en bash .

Tu peux regarder le fichier sauvegardé par wget pour voir si l'authentification c'est bien passée. T'auras besoin aussi d'un '--load-cookies' à chaque requête successive.

Ton site a l'air d'utiliser beaucoup Ajax, donc une bonne partie du contenu sera téléchargé et engendrée par des scripts Javascript. Il se peux que tu sois obligé à le lire pour voir où se trouvent les informations.


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#5 Le 09/11/2010, à 14:38

smashmatt

Re : Authentification sur un site web avec wget en bash .

Merci pour ses pistes qui vont bien m'aider !
Je vais travailler de suite sur cette piste et reposter si je bloque !
Merci encore smile

#6 Le 25/01/2015, à 16:49

Daniel61

Re : Authentification sur un site web avec wget en bash .

Bonjour,

Je me suis inspiré de ce qui écrit plus haut mais sans succès :

wget --post-data="_cm_user=1600732139508&_cm_pwd=5368" --keep-session-cookies --save-cookies cookies.txt https://www.cic.fr/fr/identification/default.cgi -O dataweb

Je ne sais pas ou est l'erreur mais voici ce que je récupère à la console au lmancement de la commande

--2015-01-25 15:32:13--  https://www.cic.fr/fr/identification/default.cgi
Résolution de www.cic.fr (www.cic.fr)... 145.226.109.155
Connexion vers www.cic.fr (www.cic.fr)|145.226.109.155|:443... connecté.
requête HTTP transmise, en attente de la réponse... 200 OK
Taille : non spécifié [text/html]
Enregistre : «dataweb»

    [ <=>                                   ] 40 535      --.-K/s   ds 0,1s   

2015-01-25 15:32:13 (327 KB/s) - «dataweb» enregistré [40535]

Je vous remercie par avance pour votre aide,

Cordialement

Hors ligne