Yelp Scraper
Pricing
from $1.50 / 1,000 businesses
Go to Apify Store
Yelp Scraper
Free Yelp web scraper to extract data from Yelp. Fast Yelp review scraper, but also gets business details and ratings without using the Yelp API.
Yelp Scraper
Pricing
from $1.50 / 1,000 businesses
Free Yelp web scraper to extract data from Yelp. Fast Yelp review scraper, but also gets business details and ratings without using the Yelp API.
Breaking
since field. Yelp no longer exposes yearJoined anywhere — not on the business
page, not via /biz/{id}/props, and not via GraphQL, on US or Japanese businesses. It had been
returning an empty string for some time, so no run was producing a value for it.Fixes
amenitiesAndMore, operationHours,
upcomingSpecialHours, healthScore, claimed, verified) would have come back empty.alternateNames, which had been returning [] for every business since Yelp changed
its page state layout. Mainly affects businesses in non-Latin-script markets, which is what the
field is for.scrapeStartedAt is now present in the output. It was being recorded internally but never
reached the pushed record.maxImages above ~30 now works. Photo pagination relied on a "next page" link that no longer
exists in Yelp's markup, and passed an offset Yelp rounds down to a multiple of 30, so every
request after the first re-fetched the same page.searchTerms without locations now fails with an explanatory error instead of
finishing successfully having scraped nothing.Optimizations
yelp.com is blocked at the domain level regardless of proxy tier, while yelp.com.au serves
the same data over datacenter IPs — so the browser and the residential traffic were both being
paid for without benefit. Runs are substantially faster and cheaper.maxImages now defaults to 20, which the business page always includes at no extra cost (it
embeds 22-23). Higher values still work and fetch additional pages as before.priceRange: null instead of dropping the
record entirely.Fixes
& → &) in place namesOther
debugLog and maxRequestRetries input optionsscrapeReviewerName and scrapeReviewerUrl input options, and add this data to the output by defaultFixes
Features
ownerReplies to each review. This field is an array of objects {"text": "Review response text", "date": "1/1/2023"} for each response to the review.Fixes
cuisine for restaurantsFeatures
aboutTheBusiness: extracts info about the business provided by the owner, specifically text about Specialties and History and year of establishmentdebugLog (disabled by default)Optimizations
reviewLimit: 0, the scraper will now completely skip making requests for the reviews page, saving a small bit of time and data transferFeatures
alternateNames to output: provides alternative names, especially useful for places in countries using non-latin characters.Features
Features
reviewsLanguage input field, which is the language in which the reviews should be scraped (Only the reviews in the selected language will be scraped).availableReviewsLanguages field to output, which contains a list of languages in which the business has reviews in.Features
Fixes
Fixes
Features
language, isFunnyCount, isUsefulCount, isCoolCount,reviewerName, reviewerUrl, reviewerReviewCount, reviewerLocationreviewerName, reviewerUrl requires enabling personal data input fields: scrapeReviewerName, scrapeReviewerUrlsearchTerm and location deprecated in favor of searchTerms and locations. You can scrape any number of those in a single run now.maxRequestRetries to input and increased its default from 2 to 10cuisine to outputwebsite to outputimages to outputpriceRange field changed from $ / $$$ to actual prices like $10-30