Python スクレイピング プログラミング

【Python】GooglePlayのアプリレビューをスクレイピングで自動取得する

この記事は約4分で読めます。

 

 

こんにちは、ミナピピン(@python_mllover)です!

今回はGoogleプレイのアプリのレビューをスクレイピングで取得する方法についてまとめていきたいと思います。

 

google_play_scraperのインストール

 

いつも通りPIPでインストールします。

# ライブラリのインストール
$ pip install google-play-scraper

 

 

Gitドキュメント⇒https://github.com/danieliu/play-scraper#details

pypl ⇒ https://pypi.org/project/google-play-scraper/

 

 

スポンサーリンク
スポンサーリンク

PythonでGoogleplayストアのアプリレビューをスクレイピングする

 

検索の上限は20×page数(12)の最大240件です。全カテゴリーのアプリ情報を欲しい、という場合はSeleniumを使うしかないかと思います。

 

import play_scraper 
from google_play_scraper import Sort, reviews
import pandas as pd
result = play_scraper.search('麻雀', page=1,hl="ja",gl="jp")
app_review_data = []
for i in result:
    cut = 0
    print('アプリID:',i['app_id'])
    print('アプリURL:',i['url'])
    print('アプリタイトル:', i['title']) 
    print('アプリ平均スコア:', play_scraper.details(i['app_id'])['score'])
    result, continuation_token = reviews(
    i['app_id'],
    lang='ja',
    country='jp',
    )
    for review in result:
        app_review_data.append([i['app_id'], i['title'], review['at'], review['userName'], review['content'], review['score']])
    while continuation_token is not None:
        cut += 1
        result, continuation_token = reviews(
            i['app_id'],
            continuation_token=continuation_token # defaults to None(load from the beginning)
        )
        for review in result:
            app_review_data.append([i['app_id'], i['title'], review['at'], review['userName'], review['content'], review['score']])
        #print(result, continuation_token)
        if cut == 6:
            break
#     print(cut)
    print('-----------------------------------------------') 
df = pd.DataFrame(app_review_data)
df

 

全件取得したい場合はreviews_all()を使いますが、レビュー件数が万件以上あるとかなり処理に時間が掛かります。スクレイピングはitunesストアよりやりやすいですね。

 

 

コメント

タイトルとURLをコピーしました