Je me demande s'il existe une API disponible pour utiliser le contenu du Centre de logiciels Ubuntu sur ma page web. Je sais que le site The Ubuntu Apps Directory contient une base de données presque complète des applications disponibles dans Ubuntu. Il y a toutes les catégories, il contient des évaluations, des images, des descriptions et aussi le bouton de téléchargement. Alors, est-il possible d'utiliser une partie du contenu disponible sur cette page ailleurs?
Réponse
Trop de publicités?Eh bien, oui. Gardez à l'esprit que
- Le seul consommateur reconnu de cette API est le projet Software Center. La syntaxe peut et probablement sera violemment dépréciée à l'avenir, sans considération pour les tiers.
- À l'avenir, le Software Center pourra potentiellement regrouper des applications provenant d'autres APIs sources, telles que celles de Mozilla Marketplace et Appstream. En tant que tel, cette API peut ne pas être exhaustive.
- Si vous abusez de cette API vous serez bloqué.
Avec toutes ces mises en garde mises de côté
Applications
https://software-center.ubuntu.com/api/2.0/applications/$LANG/ubuntu/$SERIES/$ARCH/
retournera un document JSON détaillant les applications tierces actuellement installables pour un code de langue donné, un préfixe de nom de version et une architecture. Par exemple, voici les éléments du Software Center actuellement proposés pour Ubuntu 12.04.
Pour des raisons techniques qu'il serait constitutionnellement douloureux d'expliquer, les applications disponibles dans les archives d'Ubuntu (par exemple l'Univers) sont gérées par un paquet de données : app-install-data
. Vous pouvez obtenir la liste avec apt-get source -t $SERIES app-install-data
et la gérer localement sur votre serveur; cela ne change pas très souvent.
Avis
http://reviews.ubuntu.com/reviews/api/1.0/reviews/filter/$LANG/ubuntu/$SERIES/$VERSION/$PACKAGE/
Vous obtiendrez des avis pour un paquet. Notez que la plupart des champs ici peuvent être remplacés par any
. Par exemple, voici les avis sur Warsaw écrits pour 11.10.
Évaluations
http://reviews.ubuntu.com/reviews/api/1.0/review-stats/ubuntu/$SERIES/
Vous obtiendrez toutes les évaluations pour tous les paquets.
Images
http://screenshots.ubuntu.com/thumbnail-with-version/$PACKAGE/$VERSION
http://screenshots.ubuntu.com/screenshot-with-version/$PACKAGE/$VERSION
Vous obtiendrez la vignette et la capture d'écran pour une application. Par exemple, voici la dernière capture d'écran de VLC.
Autres métadonnées mineures
/usr/share/software-center/softwarecenter/distro/Ubuntu.py
/usr/share/software-center/softwarecenter/backend/piston/
Pour plus de plaisir avec l'API, visitez ces chemins dans votre explorateur de fichiers. Tout est en Python très lisible. Il y a beaucoup de miscellanées pour des choses comme la pagination, le filtrage, le texte de licence, les statistiques des avis, etc. que vous pourriez trouver intéressantes :