Séance 5 : Les débuts de la rédaction du script

Que les choses sérieuses commencent…

Durant cette séance, nous avons continué de développer notre code HTML qui nous permet de générer un tableau dans lequel se trouvera le corpus de 50 liens que nous avons constitué.

La semaine dernière nous avions fait en sorte que le script soit en mesure d’aller chercher dans le fichier texte contenant nos URLS et de les afficher dans le terminal.

Aujourd’hui, nous allons autours de ce bloc de code, construire notre tableau au format HTML consultable sur le web.

Le tableau est constitué de 3 colonnes. Une première, indiquant la numérotation des URLS, une seconde contenant les URLS, et une troisième pour les pages aspirées.

I. Fonctionnement du script

Dans un premier temps, toujours en gardant le fonctionnement mis en place la semaine passée.
Ligne par ligne nous allons récupérer le code d’autorisation pour chaque URL pour nous assurer que la connexion vers l’URL est bonne. Cette variable sera stockée dans la colonne code_http de notre tableau.
Si la connexion est bonne le code renvoyé sera 200, sinon 301.
Ensuite, dans le cas où la connexion se réalise sans problème, nous allons alors déterminer l’encodage dans lequel est rédigé la page web. A savoir que dans le cadre de ce projet, nous ne voulons travailler qu’avec des pages encodées en UTF8.
Enfin , si notre URL parvient à passer successivement toutes ces conditions, elle sera ajoutée au tableau.
Les URL accessibles auront donc un code 200 affiché sur la même ligne.

Pour le moment, les URLS inaccessibles, ou encodées dans un autre encode seront également ajoutées au tableau mais auront un code différent de 200.

II. Les commandes spécifiques utilisées pour mettre en place le script.

Durant cette séance nous avons pu découvrir de nouvelles commandes, curl, et wget.
Leur fonctionnement est globalement similaire, ces commandes permettent de récupérer le contenu d’une URL qu’elles prennent en argument.
Nous utiliserons principalement la fonction curl car c’est celle ci qui nous permet de récupérer facilement les codes d’accessibilité des URL ou encore leur encodage. C’est de plus une fonction native, elle n’a pas besoin d’être télécharger.

C’est grâce à ces lignes de commande que nous récupérons l’URL ainsi que les informations qui lui sont associées en fonction de nos besoins :

codeHTTP=$(curl -L -w '%{http_code}\n' -o 'fichier.txt' 'url'

L’option -L permet dans le cas où l’URL aurait bouger, de refaire la requête pour atteindre son nouvel emplacement et de ne pas provoquer une erreur.
L’option -w ‘%{http_code}\n’ permet d’accéder au d’accessibilité d’une URL.
L’option -o permet d’écrire l’output de la ligne de commande dans un fichier dont on précise le nom à la place de ‘fichier.txt’.

encodage=$(curl -L -I $line | egrep charset | cut -d"=" -f2)

L’option -I $line permet d’accéder aux premières lignes de la variable $line et par la suite, grâce à egrep de récupérer l’encodage de l’URL et de le stocker dans la variable encodage.

De plus, nous avons ajouté une nouvelle colonne contenant les pages aspirées. Pour cela nous devons créer la nouvelle colonne grâce à de nouvelles lignes de code HTML

echo "<table align=\"center\" border=\"1px\" bordercolor=black>" >> $dossier_tableau/tableau.html
	echo "<thead>
        <tr>
             <th>Num</th>
             <th>http_code</th>
             <th>URL</th>
             <th>P.A.</th>
        </tr>
    </thead>" >> $dossier_tableau/tableau.html

La colonne qui contiendra les pages aspirées est maintenant créée, il nous reste plus qu’à la remplir. Pour cela, à la suite de la ligne de code récupérant le code HTTP, nous allons préciser où l’URL doit aller se placer.
A chaque nouvelle ligne lue par notre boucle, l’URL, récupérer dans la variable http_code sera enregistrée dans le dossier PAGES-ASPIREES de l’environnement de travail et l’URL sera ajoutée et accessible dans le tableau dans la colonne P.A.

Laisser un commentaire

Concevoir un site comme celui-ci avec WordPress.com
Commencer