Scraping Yelp Businesses
One popular use case we see with our Google Maps Scraper is scraping all of the businesses in a particular city, usually matching a specific category of interest. While Google makes this difficult by returning only 60 results per search, the Yelp API Business Search Endpoint offers full pagination, allowing you to scrape all businesses in any location.
The downside of the Yelp API is that it will only return back the phone number and address of each business, but not the website. This may be sufficient depending on your needs, but if you need to get the website for each business, you may want to consider using the Yelp search result data to “match” these businesses using the Google Maps Scraper and then get the website URLs from Google Maps.
1. Scraping Search Results
To get started scraping Yelp search results for businesses, you can run a search on this page by specifying any city name (which is another advantage over the Google Maps API, which requires exact coordinates) and free text query to scrape businesses for.
Note that the bounds won’t be exact, e.g. if you search for “bars” in “New York City” you’ll see results in surrounding states like New Jersey. The way around this would be to filter the results when you get them back, as they will contain useful identifiers within the address data fields such as city, state, zip code, etc… you can use to exclude these unwanted results as needed.
2. Bulk Scraping
The Yelp API will return 50 results at a time, per request. However, you simply need to increase the offset parameter by 50 each time to get the next page and so on. You can either do this manually in querying the Yelp API with your own code or use the Yelp Business Search - Pagination to automatically do this for you and combine the results together into a single CSV file.
3. Reviews Scraping
If you need to get the reviews from the list of businesses scraped, you can see the instructions on our Yelp Reviews Scraper for more details and information.