• Séance 4

    L'objectif de la séance: créer un programme qui avec une liste d'URLS, créer un tableau dans une page html. Ce tableau a trois colonnes: numéro de ligne de l'URL, lien de l'URL, ainsi qu'un lien interne vers la page html aspirée. Pour chaque fichier d'urls, il faut un tableau html.

    On précise en commentaire comment exécuter le programme, puis on déclare les arguments en tant que variable dans le programme. 

    #!/usr/bin/bash
    #bash ./PROGRAMMES/projet.sh ./URLS ./TABLEAUX/tableau.html
    #input du programme : NOM DE DOSSIER est donné en premier argument
    #output du programme : TABLEAU HTML est donné en second argument
    dossierURL=$1;
    montableau=$2;


    On crée la page html avec l'entête de cette dernière:

    echo "<html><head><meta charset=\"utf8\"></head><body>" > $montableau; 

    On initialise le compteur des tableau:

    compteur_tableau=1; 

    Avec une boucle for, on va ensuite parcourir la url de chaque fichier. dans cette boucle for, on va:

    1. Pour chaque fichier d'URLs, on va créer un nouveau tableau avec un titre
    2. Initialiser le compteur d'URLS
    3. Tant que le programme lit le fichier d'URL ligne par ligne:
      • Traiter l'URL: pour le moment, cela consiste à "aspirer" la page html associé à l'URL avec la commande curl.
      • Écrire dans le tableau final: le numéro de l'URL, le lien de l'URL, ainsi que le lien interne de la page aspirée
      • Incrémenter le compteur d'URL 
    for fichier in $(ls $dossierURL); 
            do
            echo $fichier;
            echo "<table border="10px">" >> $montableau; 
             compteur=1; 
             echo "<tr><th colspan=\"3\">TABLEAU $compteur_tableau</th></tr>" >> $montableau ; 
             compteur_tableau=$((compteur_tableau+1)); 
             while read ligne
                      do
                       curl $ligne -o ./PAGES-ASPRIREES/$compteur_tableau$compteur.html;
                       echo "<tr><td>$compteur</td><td><a href=\"$ligne\" target=\"_blank\">$ligne</a>                                </td><td><a href=\"../PAGES-ASPIREES/$compteur_tableau$compteur\">Page                                  aspirée numero: $compteur_tableau$compteur</a></td></tr>" >> $montableau; 
                        compteur=$((compteur+1)); 
                       done < ./$dossierURL/$fichier 
              echo "</table>" >> $montableau ; 
              done ;

    On finit la sortie de la page html:

    echo "</body></html>" >> $montableau ; 

    Pour télécharger le programme réalisé:  Télécharger « projet.sh »

    Attention: on remarque que certaines page html ne sont pas correctement aspirées ou ne sont pas aspirées par le programme.


  • Commentaires

    Aucun commentaire pour le moment

    Suivre le flux RSS des commentaires


    Ajouter un commentaire

    Nom / Pseudo :

    E-mail (facultatif) :

    Site Web (facultatif) :

    Commentaire :