google-play-scraper
google-play-scraper copied to clipboard
[BUG] When run app() multiple times, categories list in output is wrong.
I find a bug in constants/element.py, line 42
def extract_categories(s, categories=None): if categories == None: categories = [] if s == None or len(s) == 0: return categories if len(s) >= 4 and type(s[0]) is str: categories.append({"name": s[0], "id": s[2]}) else: for sub in s: extract_categories(sub, categories) return categories
The problem is using list as the default parameter. It does not work as expected. It's recommended to use None as the default value and initialize the list inside the function if it's None.
Modify the function extract_categories in google_play_scraper/constants/element.py as following:
def extract_categories(s, categories=None):
if categories == None:
categories = []
if s == None or len(s) == 0:
return categories
if len(s) >= 4 and type(s[0]) is str:
categories.append({"name": s[0], "id": s[2]})
else:
for sub in s:
extract_categories(sub, categories)
return categories
Oops. I'll fix it in the next release.
@JoMingyu when I run the app multiple times, I can not fetch more than a few hundreds of reviews even though millions of reviews are available. It is happening for popular apps like Google meet. My research work is not progressing. I am a doctoral scholar. Please take care..