[Python] Collect Google Play Reviews in Multiple Countries

Discussão em 'Python' iniciado por Stack, Fevereiro 18, 2025.

  1. Stack

    Stack Membro Participativo

    I am trying to collect Google Play reviews on certain apps in English-speaking countries using google-play-scraper. The problem was that when I changed the 'country' parameter, it returned the same result for all countries.

    from google_play_scraper import reviews, Sort
    import pandas as pd
    import time

    # List of countries to collect reviews from.
    # Note: Due to Google Play's regional limitations, some countries may not have available review data.
    countries = ['us', 'gb', 'ca', 'au', 'in', 'sg', 'nz', 'za', 'ie', 'pk']

    # TikTok's Google Play package name
    app_id = 'com.zhiliaoapp.musically'

    all_reviews = []

    for country in countries:
    try:
    print(f"Fetching reviews for TikTok in {country}...")
    # Fetch up to 100 reviews per country using the NEWEST sort order.
    country_reviews, _ = reviews(
    app_id,
    lang='en',
    country=country,
    sort=Sort.NEWEST,
    count=100 # Adjust the count as needed
    )

    # Add the country code to each review entry for later identification.
    for r in country_reviews:
    r['country'] = country
    all_reviews.append(r)

    # Sleep briefly to avoid potential rate limits.
    time.sleep(1)

    except Exception as e:
    print(f"Error fetching reviews in {country}: {e}")

    # Convert the collected reviews to a DataFrame.
    df = pd.DataFrame(all_reviews)

    # Save the DataFrame to a CSV file.
    output_file = "tiktok_reviews.csv"
    df.to_csv(output_file, index=False)

    print(f"Reviews saved to {output_file}")

    Continue reading...

Compartilhe esta Página