使用 API 从 Google Play 开发者那里获取统计信息
Posted
技术标签:
【中文标题】使用 API 从 Google Play 开发者那里获取统计信息【英文标题】:Getting statistics from Google Play Developers with an API 【发布时间】:2012-12-17 22:08:41 【问题描述】:我负责开发一个网站,该网站应该能够向客户显示来自 Apple 应用商店和 Google Play 商店的统计数据,以便他们可以轻松查看正在发生的事情。
我已经想出了一些获取 App Store 数据的方法,但 Google Play 开发者的统计数据似乎更难获取。
我听说过抓取,但这不是一个很好的解决方案,因为每当开发人员控制台获得重大更新时,它可能会被破坏。
我正在寻找可以像 Andlytics 或 App Annie 一样工作的东西,例如,我可以使用 AJAX 或其他东西(可能是 JSON 格式?)获取数据并将其放入数据库。
目前,我还没有找到任何可靠的解决方案(除了抓取,这似乎是一种不稳定的方法),而且这个问题已经问过一段时间了,所以我允许自己再问一次,因为也许现在有一些解决方案可以解决这个问题。
我能找到的只有 Google Play API,它允许我从应用程序的公共页面获取数据,但不能从开发者控制台获取数据,并进行身份验证。
任何提示或帮助将不胜感激:)
【问题讨论】:
那太好了!当我有一个更完整的版本时,我会在这篇文章中回复你(现在我只收集了一些数据和两个 POST 身份验证后,所以还有很多工作要做,我还在考虑我应该选择正确的输出对象模型)但我正在路上! 您好,我设法让脚本正常工作,但最近有人告诉我,由于 Google 服务的一些重大变化,它现在无法正常工作。因此,它目前需要一些修复。另外,我确实制作了一个伪教程并将其发布在这里,但我的答案被删除了,因为它“只是一个外部链接”...... @BabakBandpay 实际上,我使用的是完全不同的身份验证方法,因为 Oauth2 不允许我们通过开发人员控制台的服务进行身份验证,所以我从头开始,通过发送 3 个 HTTP requests : 1) 一个 GET 到身份验证页面,收集 cookie 和我们需要的其他信息 2) 使用这些值 + 我的登录凭据的 POST,获取 xsrftoken 和 developersconsoleaccounts 变量 3) 然后我们可以使用这两个发出 POST 请求我们获取的数据,并获取例如应用列表等。 @BabakBandpay 我可以提供更多详细信息,因为要使这些请求正常工作需要做很多设置,但我认为 cmets 不是这样做的正确位置。另外,我使用 cURL 来发送请求。 @Innova 在您进行第一次 GET 调用后,您应该准备好以下数据:帐户用户名和密码、从之前的 GET 存储的 cookie(我个人使用 CuRL)、GALX 值,其中可以从您的 cookie 存储文件中检索(它实际上是您刚刚获取的 cookie 之一)。 【参考方案1】:愿源与你同在。
Andlytics 是 open sourced 并且正在积极开发中,您可能会在其中找到一些有用的东西 :)
【讨论】:
实际上,在我创建脚本时,开发 Andlytics 的工作人员给了我很多启发和帮助(在 GitHub 上),所以是的,这很有用!即使现在,三个月前我已经设法制作了一个可以工作的 php 脚本,但我当时确实仔细查看了 Andlytics 的源代码,想知道该怎么做。 据我所知没有。 嗯,刚刚出现了一些新东西。不完全是实时的,也不是 API 可访问的,但您现在可以将数据导出到谷歌驱动程序并以编程方式访问它android-developers.blogspot.com.ar/2015/04/… @RobertEstivill 这帮了大忙!谢谢。【参考方案2】:您的 Google Play 统计信息会发布到存储在 Google Cloud Storage (https://support.google.com/googleplay/android-developer/answer/6135870?p=financial_export&rd=1#export) 存储桶中的文件中
您可以下载上述链接中提到的 gsutil 工具并将其设置为 cron 作业,以便每天将文件复制到您想要的任何位置,或者您可以使用 Google Cloud Storage API (https://cloud.google.com/storage/docs/apis)自己去拿文件。
【讨论】:
【参考方案3】:Google 似乎已经允许我们通过他们的 API 获取这些数据。这是一个页面,其中包含您可以发出请求的所有可用指标。
https://developers.google.com/analytics/devguides/reporting/core/dimsmets#mode=web&cats=user,lifetime_value_and_cohorts,channel_grouping,app_tracking
【讨论】:
这看起来很有希望!感谢您的洞察力。【参考方案4】:我知道这个问题已经得到解答,但这个解决方案值得特别关注。有一种从开发者控制台获取数据的好方法。看一看:https://github.com/tmurakam/googleplay_dev_scraper
我在我的树莓派上运行它,它运行得非常好。使用 bash 脚本安装和进一步自动化它非常简单。我真的向任何有兴趣从开发者控制台获取数据的人推荐这个刮板!有了这个,你可以从开发者控制台获取几乎所有的数据。我会定期抓取下载次数并将其保存到我的网页中。
【讨论】:
【参考方案5】:您可以在 ios 和 Android 项目中使用 Google Analytics 来记录安装和应用内购买。您可以查看here。将谷歌分析添加到两个平台应该很容易。
【讨论】:
这不是我正在寻找的解决方案,因为我(和我正在做测试的朋友的帐户)总共拥有至少 30 个应用程序。另外,如果我添加了谷歌分析,我不会有任何统计历史记录,它只会从我将它添加到应用程序的那一天开始。无论如何,我已经准备好验证和获取统计信息,但是我必须完成与此相关的组项目,以便我可以使用一些函数来做一个小的 php lib(如 cmets 中所建议的)来实现这一点。请大家耐心等待:)【参考方案6】:为什么不使用 App Annie、AppFigures(和类似的)API,让他们负责抓取/连接 Google Play 和 App Store?
http://support.appannie.com/categories/20082753-Analytics-API
http://docs.appfigures.com/
【讨论】:
实际上,就我而言,与我合作的公司(我在那里实习)的目的是从头开始构建这项服务,而不是使用来自其他网站的现有 API。但是,是的,这可以帮助一些目标不太精确的人,谢谢你的提示:) @wizche。我只想每天安装我的一个应用程序(iOs 和 Android)平台。 appannie 有没有免费的 api 来获取这些数据?以上是关于使用 API 从 Google Play 开发者那里获取统计信息的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 AndroidPublisher api 在 google play store 中检索任何 google 应用程序的评论?
错误:“用于调用 Google Play 开发者 API 的项目 ID 尚未在 Google Play 开发者控制台中链接。”
如何从 Android 中的 Google Play Games API 中提取多个排行榜?
Google 开发者控制台中的“我们检测到您的应用正在使用旧版本的 Google Play 开发者 API”警告是啥?