IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Ajouter des informations wget Script bash (notions) [Débutant(e)]


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Ajouter des informations wget Script bash (notions)
    Bonjour,

    Avant tout, je tiens à vous dire que je débute en matière de scripts.
    Je souhaite récupérer des informations sur un site web et travailler sur ces informations. Toutefois, pour accéder à la page en question, il faut que je me connecte avec un identifiant et un mot de passe.

    J'ai essayé sans succès quelques options wget mais sans réussite.

    J'ai essayé un module firefox qui s'appelle IMacros et j'ai enregistré la saisie que je voudrais automatiser via wget, dans un script bash. Voici le passage intéressant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:head_mem_id CONTENT=MONIDENTIFIANT
    SET !ENCRYPTION NO
    TAG POS=1 TYPE=INPUT:PASSWORD ATTR=ID:head_mem_pw CONTENT=MONMOTDEPASSE
    TAG POS=1 TYPE=DIV ATTR=TXT:document.write(jss2.fr_login)Connectez
    Lorsque je lance ce script via Imacros, je me log sans souci. Comment "traduire" ces commandes en bash, via wget ?

    NB : Je suis sous la dernière version d'Ubuntu.

    D'avance merci pour votre aide.

  2. #2
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    Il faut que tu t'intéresses à l'option "--post-data" de wget (voir les exemples dans la doc) et éventuellement à l'option "--save-cookies" si tu dois effectuer d'autres actions en étant identifié...

    Regarde le code source de la page web en question pour identifier les paramètres à passer à l'option.


  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par zipe31 Voir le message
    Salut,

    Il faut que tu t'intéresses à l'option "--post-data" de wget (voir les exemples dans la doc) et éventuellement à l'option "--save-cookies" si tu dois effectuer d'autres actions en étant identifié...

    Regarde le code source de la page web en question pour identifier les paramètres à passer à l'option.

    Merci pour ta réponse.

    En fait même avec le code source je n'arrive pas vraiment à comprendre comment faire.

    Si je compare le code obtenu avec IMacros, il faudrait que j'affecte aux variables head_mem_id mon identifiant, et head_mem_pw mon mot de passe, c'est cela ?
    Comment faire concrètement avec la commande wget ?

  4. #4
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Tiens pour te donner une idée, voilà comment ça se passe pour se loguer sur developpez avec wget...

    Ci-dessous la partie du code source correspondant à l'identification (en gras les valeurs à prendre en compte) :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    	<td class="alt2" nowrap="nowrap" style="padding:0px">
    		<!-- login form -->
    		<form action="login.php?do=login" method="post" onsubmit="SHA1hash(vb_login_password, vb_login_md5password, vb_login_md5password_utf, 0)">
    		<script type="text/javascript" src="clientscript/vbulletin_md5.js?v=387"></script>
    
    		<table cellpadding="0" cellspacing="3" border="0">
    		<tr>
    			<td class="smallfont" style="white-space: nowrap;"><label for="navbar_username">Identifiant</label></td>
    			<td><input type="text" class="bginput" style="font-size: 11px" name="vb_login_username" id="navbar_username" size="10" accesskey="u" tabindex="101" value="Identifiant" onfocus="if (this.value == 'Identifiant') this.value = '';" /></td>
    			<td class="smallfont" nowrap="nowrap"><label for="cb_cookieuser_navbar"><input type="checkbox" name="cookieuser" value="1" tabindex="103" id="cb_cookieuser_navbar" accesskey="c" />Se souvenir de moi ?</label></td>
    		</tr>
    		<tr>
    			<td class="smallfont"><label for="navbar_password">Mot de passe</label></td>
    
    			<td><input type="password" class="bginput" style="font-size: 11px" name="vb_login_password" id="navbar_password" size="10" tabindex="102" /></td>
    			<td><input type="submit" class="button" value="S'identifier" tabindex="104" title="Insérez votre identifiant et mot de passe dans les cases correspondantes pour vous connecter, ou cliquez sur le bouton « S'inscrire » pour créer un profil personnel." accesskey="s" /></td>
    		</tr>
    		</table>
    		<input type="hidden" name="s" value="" />
    		<input type="hidden" name="securitytoken" value="guest" />
    		<input type="hidden" name="do" value="login" />
    		<input type="hidden" name="vb_login_md5password" />
    		<input type="hidden" name="vb_login_md5password_utf" />
    
    		</form>
    		<!-- / login form -->
    	</td>
    
    </tr>
    Maintenant ci-dessous la syntaxe pour wget :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    wget -q -O- --save-cookies cookies.txt --post-data "vb_login_username=xxxxxx&cookieuser=1&vb_login_password=yyyyyy&s=&securitytoken=guest&do=login&vb_login_md5password=&vb_login_md5password_utf=" 'http://www.developpez.net/forums/login.php?do=login' | w3m -dump -T text/html
    -q
    Désactive la sortie verbeuse de wget,

    -O-
    Permet d'envoyer le résultat sur la sortie standard (l'écran)

    --save-cookies cookies.txt
    Permet de récupérer le cookie dans le fichier "cookies.txt" (utile si tu dois à nouveau revenir sur la page pour d'autres traitements)

    --post-data "vb_login_username=xxxxxx&cookieuser=1&vb_login_password=yyyyyy&s=&securitytoken=guest&do=login&vb_login_md5password=&vb_login_md5password_utf="
    Les éléments issus du code source mis en forme avec le login et le mot de passe pour l'envoi via l'option --post-data

    w3m -dump -T text/htm
    Permet d'afficher le texte formater en sortie, sans quoi c'est le code source qui est affiché

Discussions similaires

  1. Creation d'un formulaire permettant d'ajouter des information dans une autre fenêtre
    Par @rno0059 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 22/06/2007, 07h47
  2. ajouter des informations dans la base de données
    Par gentil dans le forum Hibernate
    Réponses: 7
    Dernier message: 12/04/2007, 11h15
  3. Réponses: 1
    Dernier message: 16/01/2007, 15h39
  4. [MySQL] Ajouter des informations à notre base de données
    Par wild_seven dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 26/12/2005, 17h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo