You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用google-play-scraper爬取多国家Google Play评论时结果重复的问题求助

google-play-scraper爬取多国家Google Play评论时结果重复的问题求助

各位好,我最近在做一个小项目,想要用google-play-scraper库抓取英语国家TikTok的Google Play商店评论,但遇到了一个棘手的问题——当我修改country参数切换不同国家时,返回的评论结果居然完全一样,根本获取不到对应地区的本地化评论。

我先把自己写的代码贴出来,大家帮我看看哪里出问题了:

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

# 要抓取评论的英语国家列表
# 备注:受Google Play区域限制,部分国家可能没有可用评论数据
countries = ['us', 'gb', 'ca', 'au', 'in', 'sg', 'nz', 'za', 'ie', 'pk']

# TikTok的Google Play包名
app_id = 'com.zhiliaoapp.musically'

all_reviews = []

for country in countries:
    try:
        print(f"Fetching reviews for TikTok in {country}...")
        # 每个国家抓取最多100条最新评论
        country_reviews, _ = reviews(
            app_id,
            lang='en',
            country=country,
            sort=Sort.NEWEST,
            count=100  # 可按需调整抓取数量
        )
        
        # 给每条评论添加国家标记,方便后续区分
        for r in country_reviews:
            r['country'] = country
            all_reviews.append(r)
        
        # 短暂休眠避免触发频率限制
        time.sleep(1)
        
    except Exception as e:
        print(f"Error fetching reviews in {country}: {e}")

# 转换为DataFrame并保存为CSV
df = pd.DataFrame(all_reviews)
output_file = "tiktok_reviews.csv"
df.to_csv(output_file, index=False)

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

代码的逻辑是遍历指定的国家列表,每个国家请求100条最新评论,给每条评论加上国家代码后存入总列表,最后导出成CSV。但运行后打开CSV文件发现,所有标记为不同国家的评论内容完全重复,就好像country参数根本没起作用一样。

我已经检查过参数拼写,国家代码都是正确的(比如us是美国,gb是英国),语言也设的是'en'英语。有没有小伙伴遇到过类似的问题?是我调用reviews()函数的方式不对,还是Google Play本身有什么限制导致无法按国家区分评论?麻烦大家帮忙看看,谢谢了!

备注:内容来源于stack exchange,提问作者Sơn Phạm

火山引擎 最新活动