C'est l'été, profitez-en pour dégraisser votre OPML !

Tags associés : , , posté le 26 july 2005


Réalisé au départ pour [NikO], ce script permet de supprimer les fils RSS en double contenus dans un fichier OPML ce qui arrive fréquemment lorsque l'on dépasse les 1000 fils paraît-il (à moins d'utiliser un aggrégateur qui le détecte bien entendu). Je ne sais pas si ça va servir à plus de trois personnes, vos idées sont les bienvenues et me motiveront pour continuer, n'hésitez pas à demander des fonctionnalités.

Qu'est ce que c'est tout ça ?

Bon a priori si vous ne savez pas ce que c'est, il est probable que ce programme ne vous servira pas à grand chose. Un fil RSS est un fichier généré à chaque mise à jour d'un site dans un format adapté permettant à un utilisateur de le télécharger régulièrement de façon à être tenu au courant de l'évolution du site en question. Il existe des programmes appelés aggrégateurs permettant d'exploiter ces fils, une description plus poussée de la technologie sera disponible prochainement sur ce site. Ces aggrégateurs génèrent des fichiers OPML (bien souvent de sauvegarde) contenant l'ensemble des fils auquels vous êtes abonnés. Le script proposé ici permet de supprimer les fils que vous avez inclus en double dans votre aggrégateur.

Utilisation

Pour l'instant ça se passe en ligne de commande, il suffit de taper après avoir rendu le fichier opml2uniq.py executable :

./opml2uniq.py -i <votre-ficher>.opml

Pour obtenir la totalité des options, l'inévitable option -h est à votre service.

La version 1.1 du script est sous licence GPL et librement téléchargeable.

Développement

Concrêtement, ce script ne va pas servir à grand monde je pense mais c'était aussi une façon de progresser en python et d'avoir sous la main un template pour des petits projets rapides. J'ai essayé de respecter les bonnes pratiques d'usage pour développer en python, n'hésitez pas à lire la présentation donnée aux RMLL à ce sujet. Concernant le code et sa lisibilité justement, n'hésitez pas à critiquer, je suis encore débutant et ne demande qu'à progresser ;-).

En fait, l'étape suivante du script serait de réaliser une sorte d'OPML manager graphique qui pourrait ensuite évoluer vers un aggrégateur (en cours de réflexion/développement car tous ceux que j'ai pu tester ne m'ont pas convenu). Je me suis donc lancé à la fois dans Gtk et dans DOM (oui pour l'instant le script n'utilise pas le module XML) et j'ai inévitablement été attiré par la présentation de python et XML donnée aux RMLL et là je dois dire que j'ai été choqué par les captures montrées, je crois vraiment qu'il est temps de développer des outils qui soient à la fois fonctionnels ET esthétiques ! Comment passer toute sa journée sur :

Capture emacs

alors qu'il est possible de travailler avec :

Capture scite

Loin de moi l'idée de lancer un énième troll vi/emacs/scite mais ça ne vous choque pas la laideur d'emacs (ou alors je ne suis pas encore assez barbu :D) ? Et puisque nous en sommes à ce type de considérations, quel est votre outil de développement en python ? Vous l'aurez compris en ce moment j'utilise scite qui une fois bien configuré s'avère très puissant.

6 Commentaires

Un scite bien configuré doit au moins inclure toolbar.usestockicons = 1, ou utiliser mon patch qui est en pleine refonte :-)

1 | mat, le 26 July 2005 à 18h

Une gestion moins stricte des catégories ? Actuellement ce n'est pas possible de lister les fils à propos d'un sujet précis, mais uniquement par catégorie. Que faire si je veux parcourir les carnets dédiés à ubuntu, alors que ce site est dans la catégorie "Bio-Informatique" ?

2 | S.F., le 26 July 2005 à 18h

@mat : j'attends la refonte ;)

@nud : je ne crois pas que l'opml supporte les tags, je vais voir s'il est possible de contourner ça...

3 | David, biologeek, le 28 July 2005 à 16h

Python, c'est le bien. Thanks pour ce script. Je ne l'ai pas encore testé mais l'idée est là. Tiens-nous au courant de tes développements ! Perso, j'utilise Vim/Cream en "noexpandtab" avec un tabstop de 4 ou 8 en fonction de la lourdeur du code.

4 | Play, le 30 July 2005 à 02h

Salut Play,

Tiens tiens, pour quelqu'un qui ne jurait que par Perl ;)
Ok pour ta config, il faut que je teste plus en profondeur vim, par contre je te conseille 4 espaces pour l'indentation, c'est ce qui est "standard" en python.

5 | David, biologeek, le 13 August 2005 à 21h

Merci pour le script, j'ai quelques fichiers OPML qui seront très heureux de faire un petit régime. :)

6 | bistouri, le 24 August 2005 à 17h

Ajouter un commentaire


Billets contextuels

★ L'artiste qui sommeille en chaque geek

Logo associé au billet intitulé L'artiste qui sommeille en chaque geek

J'ai voulu insister sur l'importance de la créativité lors de ma présentation de Django car c'est vraiment ce qui me plait dans l'informatique, et le web plus particulièrement, cette évolution constante, ce sentiment passionnant d'avoir ...

L'intelligence économique (veille technologique) en pratique

Sorti d'une journée de formation consacrée à la veille technologique, consistant à en comprendre les enjeux et à savoir se servir de Google (heureusement les journées consacrées à la gestion de projet et au marketing étaient beaucoup plus intéressantes ...

Pour en finir avec les « Mot de passe oublié ? »

Logo associé au billet intitulé Pour en finir avec les « Mot de passe oublié ? »

Tout le monde s'accorde sur le fait qu'un bon mot de passe est un mot de passe unique, long, compliqué et qui change souvent mais... personne ne le fait ! Pour la bonne et simple raison qu'il est ...


© 2004-2008 David Larlet - Licence (presque) libre - Site enfin propulsé par Django et hébergé par Typhon.