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}")
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}")
Share
Improve this question
asked Feb 18 at 4:21
Sơn PhạmSơn Phạm
1
New contributor
Sơn Phạm is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
1 Answer
Reset to default 0Try fetching without the 'country' property, is it presenting more/different results? Perhaps there is a known bug with that filter.