是否有可用的软件中心 Web API?

是否有可用的软件中心 Web API?

我想知道是否有 API 可用于在我的网页上使用 Ubuntu 软件中心的内容。我知道Ubuntu 应用程序目录网站包含几乎完整的 Ubuntu 应用程序数据库。它包含所有类别、评级、图像、描述以及下载按钮。那么,是否可以在其他地方使用此页面上提供的一些内容?

答案1

是的。请记住

  1. 此 API 的唯一公认使用者是软件中心项目。此语法将来可能会被彻底弃用,而不考虑第三方。
  2. 将来,软件中心可能会复用来自其他源 API 的应用程序,例如Mozilla 市场应用流. 因此该 API 可能并不全面。
  3. 如果你滥用此 API你将被封锁

除了上述警告之外

应用

https://software-center.ubuntu.com/api/2.0/applications/$LANG/ubuntu/$SERIES/$ARCH/

将返回一个 JSON 文档,详细说明第三方应用程序当前可针对给定的语言代码、版本名称前缀和体系结构进行安装。例如,以下是当前为 Ubuntu 12.04 提供的软件中心项目

由于技术原因(从本质上讲很难解释),Ubuntu 档案库中提供的应用程序(例如 Universe)由数据包处理:app-install-data。您可以使用 获取列表apt-get source -t $SERIES app-install-data并在本地服务器上处理它;它不会经常更改。

评论

http://reviews.ubuntu.com/reviews/api/1.0/reviews/filter/$LANG/ubuntu/$SERIES/$VERSION/$PACKAGE/

将为您提供某个软件包的评论。请注意,此处的大多数字段都可以替换为any。例如,以下是 11.10 写的关于华沙的评论

评级

http://reviews.ubuntu.com/reviews/api/1.0/review-stats/ubuntu/$SERIES/

将获得所有套餐的所有评级。

图片

http://screenshots.ubuntu.com/thumbnail-with-version/$PACKAGE/$VERSION
http://screenshots.ubuntu.com/screenshot-with-version/$PACKAGE/$VERSION

将获取应用程序的缩略图和屏幕截图。例如,这是 VLC 的最新截图

其他次要元数据

/usr/share/software-center/softwarecenter/distro/Ubuntu.py
/usr/share/software-center/softwarecenter/backend/piston/

要了解更多 API 乐趣,请访问文件浏览器中的这些路径。它们全都以易读的 Python 编写。您可能对诸如分页、过滤、许可文本、评论统计等内容有很多兴趣:

相关内容