昨天公司产品需要导出appStore上的评论来做产品优化,苹果是有提供这样的接口的
但是接口返回的是json的格式,也有蛮多不太需要的字段,我用python写了一个脚本直接获取并写成excel的文件 方便使用。直接上代码
# coding=UTF-8
#!/usr/local/bin/python3.7
import requests
import xlwt
appid ="************" #需要获取的App的appid
pageNum =10 #获取最新多少页的数据 pageSize为50
cc ='us' #市场地区 US美国 CN中国
output_file ='/Users/user/Documents/result1.xls' #最终文本输出的文件
def getHTMLText(url):
try:
r = requests.get(url)
return r.json()
except:
return ''
def writeToXls(json,page,sheet):
title = ["用户", "评分", "标题", "内容" ,"版本"]
for iin range(len(title)):# 循环列
sheet.write(0, i, title[i])# 将title数组中的字段写入到0行i列中
entry = json["feed"]["entry"]
for infoin entry:
row = entry.index(info) +50*(page-1) +1
sheet.write(row, 0, info["author"]["name"]["label"])
sheet.write(row, 1, info["im:rating"]["label"])
sheet.write(row, 2, info["title"]["label"])
sheet.write(row, 3, info["content"]["label"])
sheet.write(row, 4, info["im:version"]["label"])
def main():
count =0
book = xlwt.Workbook()# 创建一个excel对象
sheet = book.add_sheet('Sheet1', cell_overwrite_ok=True)# 添加一个sheet页
try:
for iin range(pageNum):
i = i +1
url ='https://itunes.apple.com/rss/customerreviews/page=' +str(i) +'/id=' + appid +'/sortby=mostrecent/json?l=en&&cc=' + cc
json = getHTMLText(url)
writeToXls(json, i, sheet)
count = count +1
print("\r当前进度: {:.2f}%".format(count *100 /10), end="")
finally:
book.save(output_file)
if __name__ =='__main__':
main()
这几个是主要的设置参数,大家打开文件编辑一下然后保存 运行即可。
appid ="************" #需要获取的App的appid
pageNum =10 #获取最新多少页的数据 pageSize为50
cc ='us' #市场地区 US美国 CN中国
output_file ='/Users/user/Documents/result1.xls' #最终文本输出的文件
用到了requests,xlwt两个库python 不熟的同学建议使用Pycharm来下载运行。需要别的信息的可以自行改造writeToXls方法满足
默认是下载最新的500条评论 如果没有500条,脚本会报错,但是数据和文件不会有问题。
网友评论