Is there a way to get more than 5 reviews from the Google Places API?

I’m working on a project that uses the Google Places API to fetch business reviews. The problem is I can only get 5 reviews max for each place. I’ve tried using the Place Details endpoint with the reviews field, but it’s always limited to 5 reviews. Even for places that have tons of reviews on Google Maps, I still only get 5.

I checked the docs and they confirm it’s limited to 5 reviews. I can’t find any way to get more or use pagination for reviews.

Does anyone know if there’s a way to get more than 5 reviews through the API? Maybe a different endpoint or some special parameter I’m missing? If not, are there any other good options that follow Google’s rules for getting more reviews?

Here’s a simplified version of what I’m using:

import requests

url = 'https://maps.googleapis.com/maps/api/place/details/json'
params = {
    'place_id': 'SOME_PLACE_ID',
    'fields': 'name,reviews',
    'key': 'MY_API_KEY'
}

response = requests.get(url, params=params)
data = response.json()

reviews = data.get('result', {}).get('reviews', [])
print(f'Got {len(reviews)} reviews')

Any help would be great. Thanks!

hey tom, google’s 5 review limit is a pain. try a proxy rotation to scrape extra info, but be careful bout the TOS. maybe mix data from yelp or fb, too. best of luck!

I’ve been in your shoes, Tom. The 5-review limit is frustrating, especially when you’re trying to build a comprehensive review system. Unfortunately, there’s no official way to get more than 5 reviews through the Places API - it’s a hard limit set by Google.

However, I found a workaround that might help. Instead of relying solely on the Places API, I started using Google Maps scraping techniques. It’s not as straightforward as API calls, but it allows you to fetch many more reviews. You’ll need to be careful to respect Google’s Terms of Service and implement rate limiting.

Another option I’ve used is combining data from multiple sources. Yelp’s API, for instance, often provides more reviews. By aggregating reviews from different platforms, you can build a more robust dataset.

Remember, whatever method you choose, always prioritize data accuracy and respect for the platforms’ policies. It’s a delicate balance, but with some creativity, you can overcome the 5-review limit.

I’ve encountered this limitation too, and it’s quite restrictive for serious data analysis. While there’s no official way to bypass the 5-review limit, I’ve found some alternative approaches that might be useful.

One method I’ve employed is to use the Place ID to construct a URL for the Google Maps page of the business, then use web scraping techniques to extract additional reviews. This requires more complex code and careful handling to avoid IP blocks, but it can yield significantly more data.

Another strategy is to leverage the ‘nextPageToken’ in the Places API response for nearby search results. By iterating through these tokens, you can sometimes gather more unique reviews across multiple API calls, though it’s not guaranteed to work for all locations.

Lastly, consider supplementing Google reviews with data from other platforms like TripAdvisor or Facebook, if applicable to your use case. This can provide a more comprehensive view of a business’s reputation.

Remember to always adhere to each platform’s terms of service and implement proper rate limiting in your code.