Suite à la déconvenue du service Ma.gnolia, je me suis décidé à automatiser les sauvegardes de mes favoris delicious fait de temps à autre quand j'y pensais. Ce fut l'occasion pour jouer avec pydelicious et sqlite, le tout en Python bien sur pour se faire la main.

Le stockage en base se fait de "deux façons" :

  • Export à plat : les bookmarks sont posés "tels quels" dans la table "post" avec le contenu des champs
  • Export "relationnel" : en plus de l'export à plat, les tables tags et post_tag (qui lie un favori à ses tags) sont peuplées.

Ainsi, vous pouvez faire ce que bon vous semble avec vos backups ensuite... (perso, j'ai des objectifs de réutilisation de cette base à d'autres fins... ;-) )

Cela donne donc deliciousbackup.

Très simple d'utilisation : après avoir configuré les variables USERNAME, PASSWORD et DBNAME, il vous suffit de faire :

 sh
python deliciousbackup.py

Il vous reste ensuite plus qu'à mettre cela dans une crontab par ex.

Attention à ne pas lancer ce script trop souvent si vous ne voulez pas voir votre IP être bannie temporairement. Si vous voulez faire des tests, remplacez :

 python
posts = dlcs.posts_all()

par :

 python
posts = dlcs.posts_recent(count='5')

Je suis preneur de toute amélioration possible de mon script (sous licence BSD).