Rotation de fonds d’écrans du National Géographic

Je pense que vous connaissez tous l'excellent magazine National Geographic, reconnu notamment pour ses superbes reportages, et ses photos magnifiques. Ce matin, alors que je me jurais de m'abonner à ce journal dès que j'habiterais pendant plus de six mois de suite au même endroit, j'ai vu qu'ils proposaient de télécharger certaines de leurs images mises au format des écrans pour en faire des wallpapers.

J'ai été assez rapidement étonné de la qualité de ces fonds d'écrans, ainsi que par leur nombre, et j'ai voulu en télécharger quelques un pour les faire tourner sur le bureau de mon ordinateur. Seul problème, il n'est pas du tout simple de les télécharger ; il faut passer par une application de présentation en Flash, et ensuite les sauvegarder un par un, ce qui représente un travail aussi long que peu intéressant.

Les wallpapers 2011 sur National Geographic

Les wallpapers 2011 sur National Geographic

J'ai donc décidé d'automatiser un peu le processus, en faisant un script bash qui répond à deux cas d'utilisation ; premièrement, télécharger les fonds d'écrans, et, deuxièmement, pouvoir mettre à jour ma collection de fonds d'écrans sans avoir à tous les retélécharger.

J'ai créé à cet usage un (en réalité deux) petits scripts bash, que vous pouvez récupérer sur mon compte GitHub, dans le projet National Geographic Wallpaper Download.

Utilisation des scripts

Il y a deux scripts : getByYear.sh et getByMonth.sh.

Le premier repose entièrement sur getByMonth.sh ; il ne sert qu'à lui passer tous les mois de l'année, et à le lancer autant de processus de téléchargements qu'il y a de mois dans l'année (12 threads sont donc créés). Utilisation  :

./getByYear.sh 10 # Télécharge les wallpapers de l'année 2010

C'est getByMonth.sh qui fait tout le travail ; en effet, il itère sur les noms des wallpapers (avec une hypothèse de 100 wallpapers différents chaque mois maximum, mais cette limite est arbitraire, et simple à relever). On l'utilise avec :

./getByMonth.sh 10 02 # Télécharge tous les fonds d'écrans de février 2010

A noter que :

  • Les deux scripts doivent être exécutables (chmod +x) ;
  • Si on relance un des deux scripts, il ne recharge pas tous les wallpapers, grâce à l'utilisation de l'option no-clobber de wget. On peut donc s'en servir pour rafraîchir sa collection sur l'année en cours (par exemple avec un cron qui relance getByYear.sh toutes les deux semaines).

Rotation des fonds d'écran

Il existe de nombreux programmes qui permettent de faire tourner les fonds d'écrans. Si vous utilisez KDE, ou Windows 7, c'est possible nativement. Par ailleurs, si vous utilisez Windows, je vous ai fait une petite archive que vous pouvez télécharger en bas de l'article.

En revanche, si vous utilisez Gnome, je ne saurais que vous conseiller d'utilisez Desktop Drapes, qui est dans les les dépôts officiels Ubuntu. Il vous permet de définir un dossier surveillé, ce qui s'intègre parfaitement avec la solution du cron donné précédemment.

Il ne reste plus qu'a vous assoir et à profiter d'un fond d'écran superbe qui change toutes les quinze minutes, ce qui accroît le confort du poste de travail (au moins pour moi).

Limitations et todo

Actuellement, les scripts ne fonctionnent que pour les mois postérieurs à septembre 2009, ce qui est du à un changement de charte de nommage et de résolution disponible à cette date. Il faudrait adapter le script getByMonth.sh pour tenir compte de cette date lors du téléchargement.

Si vous voulez le faire, n'hésitez pas a forker le dépôt sur GitHub, et a me renvoyer la demande de pull (je trouve que GitHub est extrêmement bien fait de ce côté là).

Utilisez ces scripts comme bon vous semble, dites moi si ils vous ont été utiles !

Téléchargement

Tous les fonds d'écrans sont en 1600x1200 px.  Désolé par avance pour ceux qui ont des résolutions supérieures !

Vus : 2461
Publié par Romain Bochet : 29