最近、チームで ASO の最適化を行っているため、大量のアプリレビューを収集する必要がありました。通常の方法は、サードパーティの ASO 最適化プラットフォームのレビューエクスポート機能を利用することですが、この機能ではエクスポートできるデータが少ないです。インターネットで検索した結果、Python を使用して App Store の任意のアプリのレビューを取得する方法を学びました。
通常のアプリレビューの取得方法#
Qimai データ ASO プラットフォームを例にとります。取得したいアプリを検索し、例えば WeChat を選択し、WeChat の Qimai の詳細ページで「評価とレビュー」を選択し、最後に「レビューの詳細」を表示して「データのエクスポート」ボタンをクリックすると、アプリのレビューデータをエクスポートできます。
この方法の利点と欠点は次のとおりです:
- 利点: 日付、評価、キーワードでレビューをフィルタリングでき、機械的な操作にも適しています。
- 欠点: レビューデータを直接エクスポートすることはできず、テキスト処理が必要です。
Python を使用して App Store の任意のアプリのレビューを取得する#
上記の通常の方法を除外した後、App Store の競合製品のレビューデータを直接取得する方法があるかどうかを考えました。検索してみると、知恵袋に Python スクリプトがあり、Apple の公式 API を使用して 500 件のレビューデータを取得できることがわかりました。
元の投稿:如何获取 itunes 一款 app 的所有评论内容?爬虫?苹果提供的 api?
この方法に従って試してみると、App Store の任意の ID の製品のレビューデータを正常に取得し、Excel 形式でエクスポートすることができました。以下は使用方法です:
ステップ 1: Python 3 環境をインストールします。Anaconda(清華大学ソース)をダウンロードしてインストールすることができます。
ステップ 2: pip
コマンドを使用してXlsxWriter
モジュールをインストールします。以下はコードです:
pip install XlsxWriter
ステップ 3: バイドゥで「appstore + アプリ名」と検索し、公式ウェブサイトにアクセスして、アプリの ID を取得します。
ステップ 4: 以下の Python スクリプトを*.py
形式で保存します。例えば、comments.py
とします。
import urllib.request
import json
import xlsxwriter
print("これはApp Storeの任意のアプリのレビューリストをオンラインで取得するツールです")
print("実行後、「appコメント.xlsx」という名前のファイルが生成されます")
page=1;
appid=input("アプリIDを入力してください:");
#appid=1182886088
workbook = xlsxwriter.Workbook('appコメント.xlsx')
worksheet = workbook.add_worksheet()
format=workbook.add_format()
format.set_border(1)
format.set_border(1)
format_title = workbook.add_format()
format_title.set_border(1)
format_title.set_bg_color('#cccccc')
format_title.set_align('left')
format_title.set_bold()
title=['ニックネーム','タイトル','コメント内容']
worksheet.write_row('A1',title,format_title)
row=1
col=0
count=0
#デフォルトで10回ループ
while page<11:
myurl="https://itunes.apple.com/rss/customerreviews/page="+str(page)+"/id="+str(appid)+"/sortby=mostrecent/json?l=en&&cc=cn"
response = urllib.request.urlopen(myurl)
myjson = json.loads(response.read().decode())
print("データファイルを生成しています、お待ちください......"+str(page*10)+"%")
if "entry" in myjson["feed"]:
count+=len(myjson["feed"]["entry"])
#1列目に書き込む:ニックネーム
for i in myjson["feed"]["entry"]:
worksheet.write(row,col,i["author"]["name"]["label"],format)
row+=1
#2列目に書き込む:タイトル
row=1+(page-1)*50
for i in myjson["feed"]["entry"]:
worksheet.write(row,col+1,i["title"]["label"],format)
row+=1
#3列目に書き込む:内容
row=1+(page-1)*50
for i in myjson["feed"]["entry"]:
worksheet.write(row,col+2,i["content"]["label"],format)
row+=1
page=page+1
row=(page-1)*50+1
else:
print("データファイルを生成しています、お待ちください......100%")
break
if count==0:
print("実行完了、データが取得できませんでした。入力が正しいか確認してください!")
else:
print("完了しました、関連ファイルを確認してください。合計"+str(count)+"件のデータが取得されました")
workbook.close()
ステップ 5: 最終的に生成されたアプリのレビューテーブルをe:\
ドライブのルートディレクトリに保存したい場合は、そのディレクトリで DOS ウィンドウを開き、このスクリプトを実行します。
cd e:\
python comments.py
そして、アプリの ID を入力するようにプロンプトが表示されるので、App Store でその ID に対応するアプリのレビューを自動的に取得することができます。以下はスクリーンショットです。