mardi 3 janvier 2012

2-4-1

Après une longue pause, nous sommes en mesure de pouvoir présenter deux scripts qui ont été rédigés en parallèle à partir d'une base commune.

Le principe de base et l'enchaînement des boucles sont à peu de choses près les mêmes.

Les principales différences se situent au niveau de la constitution du tableau, puisque dans le premier script, chaque ligne se construit colonne par colonne selon l'enchaînement des différentes boucles, tandis que dans le second, chaque ligne est générée d'un bloc lorsqu'une boucle est validée.

La deuxième différence provient de l'écriture de l'expression régulière destinée à extraire le charset d'une page html lorsque l'encodage n'est pas immédiatement donné par file.

Le premier script accompagné d'un exemple de tableau créé avec une liste test d'URL:



Oups, la présentation n'est pas parfaite. Mais le résultat est là.

Le deuxième script. Les boucles s'enchaînent convenablement, mais un problème persiste, les fichier encodés en US-ASCII ne sont pas convertis en UTF-8: 





mardi 22 novembre 2011

pedal to the floor


On avance un peu plus, avec quelques ajouts :
- les commandes unix wget et curl
permettant d'aspirer les pages html via leur url. Ces commandes, auxquelles on a ajouté des attributs dans cet objectif, ont au départ une fonctionnalité de "navigateur" de la fenêtre de commande : 
on utilise les deux afin de récupérer des pages qui auraient échappé à la première cueillette.
- à l'aide de la commande lynx -dump on extrait le contenu textuel des pages html

Il est aussi important de récupérer la valeur du rapport d'erreur de chaque page aspirée ; si le retour de la commande curl équivaut à 0, alors la tâche a normalement été correctement accomplie.
C'est ici qu'on se cogne la tête : notre retour nous informe qu' OK il a bien récupéré une page textuelle, mais la ligne contenue est formelle : "bad request" ...

Aussi, pour vérifier grossièrement le contenu textuel des aspirations, on s'est servi de la commande egrep pour filtrer les lignes où apparaissent le mot choisi.

script bleu
avec un aperçu du tableau


jeudi 10 novembre 2011

Etape suivante

Second script : créer un tableau de liens avec des liens externes vers les pages visées et des liens internes vers les pages correspondantes aspirées.

Le script s'étoffe

Le nouveau tableau obtenu

Ubuntu my friend.

Les versions d'Ubuntu étant parfois différentes entre les machines de l'ILPGA et celles installées sur nos machines personnelles, l'expérience utilisateur peut s'avérer différente at home et à la fac.

En fait, la principale différence concerne l'interface Unity implantée depuis la version 11.04 d'Ubuntu.

A ce titre, voici comment pouvoir revenir à l'UI précédente:

dans un terminal, lancer => sudo apt-get install gnome-panel

La prochaine fois que vous vous loggerez dans Ubuntu, cliquez sur la roue dentée à côté de votre username et vous pourrez choisir l'interface classique (Gnome).

[Source]

mardi 8 novembre 2011

bashtml 0.2

Modification du code afin que l'on puisse appeler un deuxième fichier d'Url et concaténer le résultat à l'intérieur d'un seul fichier .html:

Le script modifié

Résultat
La mise en forme laisse encore à désirer...

samedi 5 novembre 2011

bashtml

Après avoir récupéré un maximum toutefois raisonnable d'url concernant le mot "printemps" - afin de rassembler un panel d'occurences et divers contextes dans lesquels apparaît le mot - notre objectif est de poursuivre l'écriture d'un script bash permettant de transformer l'ensemble de ces url sous format texte en un tableau html, et résultat :

le script un peu chargé en commentaires



L'incrémentation en bash :

Pour obtenir le numéro de ligne correspondant à l'url dans le tableau, on attribue d'abord une valeur initiale à une variable et on ajoute la valeur de 1 au compteur.
La syntaxe de l'incrémentation diffère selon les langages de programmation, le plus souvent vous la connaissez (si!) sous la forme i++
Mais concernant bash, on trouve l'opération sous 3 formes, aux effets équivalents :
  • i=`expr $i + 1`
  • i=i+1 # celle ci n'a pas été fructueuse lors de mes tests... je vais y songer
  • i=$(($i+1))


Visual proof :
tableau peu esthétique mais efficace

> Ce script concerne uniquement les url en français pour l'instant, est-ce qu'apporter des modifications comme insérer les url anglais, allemands et russes sous forme de tableaux distincts simplifierait la suite du projet ?

    jeudi 27 octobre 2011

    Vous en reprendrez bien un peu?

    Je continue sur ma lancée, cette fois-ci, c'est du Html, l'objectif étant de créer une page avec une en-tête et un tableau sur deux lignes avec deux colonnes.


    Le code sous Gedit

    Et le résultat en live:

    Le code passé par la moulinette de Firefox

    Pour la petite histoire (ne me demandez pas comment j'en suis arrivé là), mais le bgcolor des cases "Printemps" a comme valeur "fleury", et oui ça marche. En fait, il semblerait que ce bgcolor soit codé par la valeur "fleu". Si je trouve une explication logique, je la laisserai en commentaire.

    Cépatoussa, je retourne à la pêche aux URL.