#1 Le 30/06/2010, à 15:18
- fabrice91
[Résolu] wget avec user et mot de passe
Bonjour,
J'ai 50 fichiers à récupérer sur un site qui propose les liens sous la forme :
http://lesite.fr/download.php?f=/data/fichier1.txt
http://lesite.fr/download.php?f=/data/fichier2.txt
etc...
Il faut de plus s'authentifier sur la page !
J'ai testé différentes choses entre autres :
wget --quiet --post-data='login=myUser&pass=myPasswd' --save-cookies=cookies.txt --keep-session-cookies http://lesite.fr/page.php -O log
qui est l'adresse de login et qui me récupère bien des cookies de session.
Puis je tente la recup du fichier lui même :
wget --quiet http://lesite.fr/download.php?f=/data/fichier1.txt --load-cookies=cookies.txt --save-cookies=cookies.txt --keep-session-cookies -O fichier
Mais j'obtiens dans "fichier" une page html qui me dit :
<br /><br /><br /><br /><br /><br /><br />You must be logged in to perform this action.
J'ai testé également avec cURL, sans succès non plus.
Une idée ?
Merci
Dernière modification par fabrice91 (Le 02/07/2010, à 09:21)
Hors ligne
#2 Le 30/06/2010, à 17:10
- chaoswizard
Re : [Résolu] wget avec user et mot de passe
Les options de wget m'ont l'air bonne.
Par contre, il faut que tu fasses gaffe à 2 choses qui dépendent du site en question :
- Lorsque tu veux récupérer le cookie de connexion, il faut que tu ailles sur la page pointé
- Il faut que tu trouves les bons champs à remplir
Je m'explique avec un exemple :
Si dans le code HTML de la page tu as :
<form action="connexion_operations.php" method="post">
<fieldset>
<legend><span class="police_menu">Codes d'accès</span></legend>
<span class="police_menu">Pseudo :</span>
<input type="text" class="texte" name="pseudo" value="" /><br />
<span class="police_menu">Passe :</span>
<input type="password" class="texte" name="mot_de_passe" value="" /><br />
<span class="police_menu">Mémoriser :</span>
<input type="checkbox" name="memorisation" value="oui" /><br />
<center><input type="submit" class="submit" value="Valider" onClick="this.form.submit();this.disabled=true;this.value='Patientez...'" /><br />
<a class="lien_menu2" href="?p=Mot_de_passe_perdu">Mot de passe perdu ?</a></center>
</fieldset>
</form>
Ta commande wget ressemblera à :
--cookies=on --load-cookies=cookies.txt --keep-session-cookies --save-cookies=cookies.txt --post-data="pseudo=""$pseudo""&mot_de_passe=""$pass""&memorisation=oui" "http://www.site.com/connexion_operations.php"
Ubuntu ==> Debian ==> Archlinux
Hors ligne
#3 Le 02/07/2010, à 09:21
- fabrice91
Re : [Résolu] wget avec user et mot de passe
Merci bien pour le coup de main, j'avais en effet oublié quelques post-data
Il y avait un hidden que je n'avais pas mis entre autre...
Ca marche !
Hors ligne