Table des matières
Le objectif de ce module est de fournir des recettes aidant à la gestion des signets. Ce module est constitué de plusieurs recettes premettant de :
Le module fait partie du groupe Infopal.Utilisez l'outil de manipulation des paquetages de Narval, npm ou Horn pour installer le paquetage Infopal téléchargeable depuis le site ftp .
Il est nécessaire de spécifier le fichier de bookmarks à utiliser, en l'ajoutant au fichier $NARVAL_HOME/data/memory.xml.
Si votre fichier est un bookmarks html de netscape, alors l'ajouter entre deux balises, comme dans l'exemple ci-dessous :
<bookmark-file type="netscape">$HOME/.netscape/bookmarks.html</bookmark-file>où $HOME représente votre répertoire utilisateur.
En revanche, si votre fichier est une suite d'url, alors l'ajouter entre deux balises, comme dans l'exemple ci-dessous :
<bookmark-file type="raw">$HOME/revpresse.txt</url>
La recette est consituée de deux actions :
Les signets sont stockés dans des formats propres aux navigateurs utilisés (le format utilisé par Lynx n'est pas le même que celui utilisé par Netscape ou encore Explorer). Cette première étape consiste donc à convertir ce fichier au format XBEL. Une fois cette étape effectuée, l'élément XBEL généré se trouve en mémoire de Narval, mais il n'est pas stocké dans un fichier.
Cette étape va regarder si un fichier de signets au format XBEL est présent dans le répertoire $NARVAL_HOME/data.
Si c'est le cas, elle le met à jour : supprime les signets qui ne sont plus présents, ajoute les nouveaux, utilise la hiérarchie actuelle des signets de l'utilisateur, etc. On ne se contente pas de recopier le fichier obtenu à la première étape, car le fichier dans $NARVAL_HOME/data est susceptible de contenir des informations spécifiques sur les pages visitées (attributs checksum, changed) qui servent notamment à vérifier si les pages ont été modifiées (cf. recette check_site).
Si le fichier n'existe pas, cette étape se contente de le créer en recopiant l'élément XBEL obtenu à l'étape précédente.
Grâce à la recette précédente, on a mis à jour le fichier $NARVAL_HOME/data/bookmarks.xbel. Cette recette va donc permettre de tester quelles pages de signets ont été modifiées depuis la dernière visite. L'emplacement de la page HTML qui sera créée par cette recette peut être paramétrée en éditant la recette dans Narval et en modifiant la valeur de l'élément "html-file" dans les arguments de get_xslt_resut.(par défaut file://$NARVAL_HOME/data/modified_pages.html)
Le principe général est le suivant : on récupère un fichier de signets au format XBEL. On en extrait les différents signets et on calcule pour chacun un checksum pour la page Web correspondante et on compare avec l'ancien checksum si on en possède un. On sait alors si les pages ont été modifiées. On construit alors une page HTML listant l'ensemble des pages modifiées.
Cette étape sert à récupérer les éléments bookmark d'un fichier XBEL. On peut modifier la source (l'emplacement du fichier XBEL) en éditant la recette et en modifiant la valeur de xml-repository dans arguments. Les éléments ainsi récupérés sont placés dans la mémoire de Narval et pourront être directement utilisables par l'étape suivante.
Cette étape va travailler sur chaque élément bookmark mis en mémoire par l'étape précédente. Pour chaque signet, l'algorithme est le suivant :
Si l'élément bookmark possédait déjà un attribut checksum, on le récupère et on le compare au checksum que l'on vient de calculer. S'ils sont identiques, la page n'a pas été modifiée depuis le dernier test, on met alors l'attribut changed à no. Sinon, la page a été modifiée, on met donc l'attribut changed à yes, et on met à jour la valeur du checksum,
Si l'élément ne contenait pas d'attribut checksum, alors on met l'attribut changed à yes, et on intialise la valeur de l'attribut checksum avec la valeur que l'on vient de calculer.
Cette étape va mettre à jour le fichier XBEL en remplaçant les éléments bookmark du fichier XBEL par les éléments en mémoire de Narval générés par l'étape précédente.
La recette classify permet de trier vos signets de manière adaptive. La méthode des centres mobiles est toujours utilisée et si il y a assez de signets à trier, alors la méthode TF-IDF (Term Frequency - Inverse Document Frequency) est également utlisée. Voir la documentation de l'action Classify.classify si vous voulez un meilleur controle du tri.
Après quelques instants, vous obtiendrez dans les deux cas un fichier $NARVAL_HOME/data/bookmarks_sorted.html.
Des sites web tel que NewsIsFree mettent à votre disposition de nombreux canaux rss extraits de différents sites.
Pour l'instant, seul les signets de Netscape/Mozilla, les fichiers textes contenant une liste d'url et les fichiers au format XBEL sont gérés. Il est donc prévu de permettre de traiter les navigateurs Explorer, Lynx (une version Beta est disponible) et Opera et d'autres par la suite.
Permettre de fournir des informations plus précises sur les pages qui ont été modifiées. Par exemple, permettre de préciser quelles parties de la page ont été modifiées.