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


12

我想知道我的网页上是否有API可用于使用Ubuntu软件中心的内容。我知道Ubuntu Apps Directory网站包含Ubuntu中几乎完整的应用程序数据库。有所有类别,其中包含评分,图像,描述以及下载按钮。因此,可以在其他地方使用此页面上的某些内容吗?


Answers:


12

嗯,是。请记住

  1. 该API唯一公认的使用者是软件中心项目。将来可能并且很可能会弃用该语法,而不考虑第三方。
  2. 将来,软件中心可能会来复用来自其他源API的应用程序,例如Mozilla MarketplaceAppstream的那些。因此,此API可能并不全面。
  3. 如果您滥用此API ,则将被阻止

撇开所有这些注意事项

应用领域

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

将返回一个JSON文档,其中详细说明了当前可为给定语言代码,发行名称前缀和体系结构安装的第三方应用程序。例如,以下是当前为Ubuntu 12.04提供的Software Center项目

出于技术上的原因,从结构上很难解释,可以从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。您可能会对分页,过滤,许可文本,评论统计信息等等有很多杂项:


问题..这不返回所有的应用程序或askubuntu.com/questions/244186/...
Voidcode

而且也没有办法让智能的方式应用-评论:askubuntu.com/questions/236501/...
Voidcode

如何仅获取类别?
尼卡比曹
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.