我希望能够检索Google Play上特定应用的所有评论,并从评论中获取以下信息:评分、评论内容、设备名称以及评论所针对的应用版本。
我尝试使用android-market-api,但遗憾的是我只能获得评分、创建时间、作者名称、文本和作者ID等信息。
因此,我想知道是否有API或者URL可以发送POST或GET请求(类似于android-market-api发送POST请求),以检索我需要的信息。
我希望能够检索Google Play上特定应用的所有评论,并从评论中获取以下信息:评分、评论内容、设备名称以及评论所针对的应用版本。
我尝试使用android-market-api,但遗憾的是我只能获得评分、创建时间、作者名称、文本和作者ID等信息。
因此,我想知道是否有API或者URL可以发送POST或GET请求(类似于android-market-api发送POST请求),以检索我需要的信息。
终于,谷歌现在提供了它(在Google I/O 2016上宣布):
使用服务账户凭据,使用新的评论 API在 Python 中的示例。
from httplib2 import Http
from oauth2client.service_account import ServiceAccountCredentials
from apiclient.discovery import build
credentials = ServiceAccountCredentials.from_json_keyfile_name(
'<secret from service account>.json',
scopes=['https://www.googleapis.com/auth/androidpublisher'])
service = build('androidpublisher', 'v2', http=credentials.authorize(Http()))
package_name = "<package name>"
reviews_resource = service.reviews()
reviews_page = reviews_resource.list(packageName=package_name, maxResults=100).execute()
reviews_list = reviews_page["reviews"]
infinite_loop_canary = 100
while "tokenPagination" in reviews_page:
reviews_page = reviews_resource.list(packageName=package_name,
token=reviews_page["tokenPagination"]["nextPageToken"],
maxResults=100).execute()
reviews_list.extend(reviews_page["reviews"])
infinite_loop_canary -= 1
if infinite_loop_canary < 0:
break
请注意 - 我发现,评论 API 只允许访问最近两周的评论和评分。如果您想进行一些追溯分析,最好从保存在 Google Cloud 帐户桶中的位置获取评论和评分的 CSV 文件。
我目前也在寻找同样的东西。虽然这是一个老帖子,但我想分享一下我在这个领域的研究成果,这可能对其他访问者有所帮助。
商业
开源
更新:
http://www.playstoreapi.com/docs#app_info(现在不可用!)但相反,您可以尝试https://github.com/thetutlage/Google-Play-Store-API/
当人们开始回答这个问题时,他们会指向以下API:
标题:android-market-api。
链接:http://code.google.com/p/android-market-api/
不幸的是,这个API很一般,并且存在一些问题,我认为这些问题与API的开发者无关,而是与谷歌的交互有关。
我使用过这个API,我编写的应用程序可以找到一些应用程序及其元数据,但对于其他应用程序,它只返回没有结果。 我已经寻找答案有一段时间了,但还没有弄清楚。
祝你好运
有一些有趣的API发布,可以获取Google Play上的评论和回复。您可以获取所有想要的数据:
"device": string,
"androidOsVersion": integer,
"appVersionCode": integer,
"appVersionName": string
get GET
基于评论ID返回单个评论。
list
从Play商店返回评论列表。
reply
回复单个评论或更新现有回复。