抓住百万下载与Bintray的新统计API
更新:自2021年5月1日起,Bintray服务将不再可用(ConanCenter和JCenter不受影响),更多信息请阅读中心弃用博客
想知道您的软件包被下载了多少次?Bintray一直通过它的UI提供下载统计数据,但现在你也可以通过REST API获得专业存储库的数据。每个版本在任何时间范围内的下载的详细统计可以让您深入了解您的软件版本是如何被消费的。
如果你从未在Bintray中使用过统计数据,请在用户指南中查看。
让我们看一个例子
假设我想获得“myCoolPackage”从2015年10月1日到10月8日的每日下载数。这是Bintray UI中的数据:
根据图表显示,“myCoolPackage”在此期间的总下载量为147,752次。我们可以清楚地看到,每天都有下载量;10月4日(周日)和10月8日(该图表是在10月8日中午左右生成的)有下降,最受欢迎的版本是1.1.0和1.2.0.
现在,您可以使用新的REST API以编程方式获取所有这些信息。下面是REST API文档中描述的“每日下载”API:
GET /包/主题/:/统计/ time_range_downloads回购/:包
为了得到上图中显示的统计数据,我将使用以下命令:
curl -X GET "https://api.bintray.com/packages/tamarUser/Maven/myCoolPackage/stats/time_range_downloads" -u tamarUser:***my-top-secret-api-key*** -H "content-type:application/json" -d " {\"from\":\"2015-10-01T12:08:56.235z\",\"to\":\"2015-10-08T12:08:56.235z\"}"
我得到以下JSON格式的响应:
{“从”:“2015 - 10 - 01 t00:00:00.000z”、“到”:“2015 - 10 - 08 - t23:59:59.999z”、“记录”:[{“日期”:“2015-10-01”、“下载”:[{“版本”:“1.0.5”,“数”:1939},{“版本”:“1.1.0”,“数”:6950},{“版本”:“1.1.3”,“数”:293},{“版本”:“1.1.7”,“数”:116},{“版本”:“1.2.0”,“数”:10111},{“版本”:“1.2.1”,“数”:1329},{“版本”:“1.2.2”、“数”:1706}]},{“日期”:“2015-10-02”、“下载”:[{“版本”:“1.0.5”,“数”:315},{“版本”:“1.1.0”,“数”:6975},{“版本”:“1.1.3”,“数”:198},{“版本”:“1.1.7”,“数”:121},{“版本”:“1.2.0”,“数”:9967},{“版本”:“1.2.1”,“数”:1290},{“版本”:“1.2.2”、“数”:1759}]},{“日期”:“2015-10-03”、“下载”:……]}
响应提供Bintray用于在UI中创建图表的所有相同数据。对于在请求日期范围内发生下载的每一天,它会列出每个版本的下载数量。作为简单的JSON输出,您可以轻松地解析响应并以任何方式使用它,以帮助您快速有效地分析软件包下载。你现在可以识别下载的趋势,你的流行版本和更多。
其他统计数据包括:总下载量和按国家分类的下载量。当我们添加新的api时,请继续关注这个博客。
好运!

