Yelp Scraper AIO - Reviews, Photos & Business Details avatar

Yelp Scraper AIO - Reviews, Photos & Business Details

Pricing

from $0.70 / 1,000 scraped business details

Go to Apify Store
Yelp Scraper AIO - Reviews, Photos & Business Details

Yelp Scraper AIO - Reviews, Photos & Business Details

Fast all-in-one Yelp scraper. Extract business listings, reviews (with owner replies) and media (photos/videos in original size) by URL, business ID, search query or category. No limits on reviews/media, synced by business ID for easy processing. Full Yelp category tree included.

Pricing

from $0.70 / 1,000 scraped business details

Rating

0.0

(0)

Developer

Vladimir Efimenco

Vladimir Efimenco

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

2

Monthly active users

2 days ago

Last modified

Share

๐Ÿ”ฅ Yelp Scraper - All in One: Business, Reviews & Photos/Videos, No Limits

Extract Yelp business data, reviews, and media in one run. Pure HTTP based Yelp scraper built on a full reverse engineering of the Yelp mobile app, so it's fast and doesn't rely on a browser. Get business listings, detailed reviews with owner replies, and photos/videos in original size, all synced by business ID.

๐Ÿฝ๏ธ What this Yelp scraper does

This is an all in one Yelp scraper: business listings, reviews, and media in a single actor run, no need to chain three different tools together. Feed it Yelp URLs, business IDs, or aliases, or just give it a location plus a search query or category, and it pulls everything you asked for.

Most Yelp scrapers on the market cap you at Yelp's own review or photo limits. This one doesn't. Reviews and media have no limit set by the actor, only what actually exists on the business page. The only cap is Yelp's own 240 result limit on search/category runs, and even that can be worked around with sort and filter combinations.

Why people use this Yelp business, reviews & photos scraper

  • ๐Ÿงฉ All in one: business details, reviews, and media in one run, three clean output datasets synced by business ID.
  • โ™พ๏ธ No review or media limits: pull every review and every photo/video Yelp has, not just the first page.
  • ๐Ÿท๏ธ Full Yelp category tree included: browse the actor's category list to get the exact category slug instead of guessing.
  • ๐Ÿ”— Flexible input: direct URLs, business IDs, aliases, or location + search query, or location + category.
  • โšก Fast pure HTTP scraping: reverse engineered from the Yelp mobile app, including its crypto signing, so no headless browser needed.
  • ๐ŸŽฏ Review filtering built in: filter by star rating, sort by date or rating, cut off at a review date, and check reviews locally against your own keyword list.
  • ๐Ÿ’ฌ Owner replies included: every review comes with the business owner's reply if one exists.
  • ๐Ÿ“ธ Original size media: photos come back in full original resolution, not thumbnails, with captions, dates, and author info. Videos include duration and thumbnail.

โš™๏ธ How this Yelp scraper works

  1. Pick your input mode - either paste Yelp business URLs/IDs/aliases directly, or give a location with a search query or a category.
  2. Search mode fetches listings first - with a search query or category, the actor searches Yelp for matching businesses in that location and collects the business data straight from the search results.
  3. Listing URL mode goes straight to the business - give it URLs, IDs, or aliases and it fetches each business directly, no search step needed.
  4. Reviews and media are fetched per business, in the same run - turn on scrapeReviews and/or scrapeMedia and every business found (from either mode) gets its reviews and/or media pulled right after.
  5. Everything lands synced by business ID - business, review, and media rows all carry the same business ID, so joining them in a spreadsheet or a script is a simple lookup, no fuzzy matching needed.

๐Ÿ“ฅ Input

Run this Yelp scraper from the Apify Console with the input form, or pass the same fields as JSON through the API.

๐Ÿงญ Main mode

FieldTypeDefaultWhat it does
mainModestringsearchlisting_urls scrapes the URLs/IDs you give it directly. search runs a search query or category search first.

๐Ÿ”— Listing URLs (used when mainMode is listing_urls)

FieldTypeDefaultWhat it does
listingUrlsarray of strings-Yelp business URLs, aliases, or IDs to scrape directly. All three formats can be mixed in the same list.

๐Ÿ” Search / Category (used when mainMode is search)

FieldTypeDefaultWhat it does
searchModestringqueryquery searches by free-text keyword. category searches by a fixed Yelp category slug.
searchQuerystring-Keyword to search for, e.g. "coffee shop", "plumber". Used only in query mode.
categorystring-Yelp category slug, e.g. "coffee", "autorepair". Used only in category mode. Full category list with copyable slugs is linked in the actor's input form.
locationstring-City, state, ZIP, or "City, State", e.g. "Newark, DE", "90210", "Beverly Hills, CA".
sortstringdefaultResult order: recommended, distance, rating high to low, or review count high to low.
openNowbooleanfalseOnly include businesses currently open.
priceRangearray[]Filter by price level, $ to $$$$. Not every category supports this, Yelp just ignores it when it doesn't apply.
maxResultsinteger50Max results per search/category. 0 = all available, capped at 240 by Yelp itself.

โš™๏ธ Common settings (apply to every business found, in either mode)

FieldTypeDefaultWhat it does
scrapeReviewsbooleantrueFetch reviews for each business.
scrapeBusinessDetailsbooleanfalseFetch full business details. Only needed in Listing URLs mode, search mode already returns full business data.
scrapeMediabooleanfalseFetch photos and videos for each business.

โญ Review settings

FieldTypeDefaultWhat it does
maxReviewsinteger100Max reviews per business. 0 = all available.
reviewRatingstringanyOnly fetch reviews with this star rating.
reviewSortBystringrelevance_descNewest first, oldest first, highest rating, lowest rating, or relevance.
reviewCutoffDatestring-Only works with newest/oldest sort. Stops fetching further reviews for a business once this date is reached.
reviewKeywordsarray of strings[]Keywords checked locally against each review's text (not sent to Yelp). Every review gets a per-keyword match flag plus an overall match flag.

๐Ÿ“ท Media settings

FieldTypeDefaultWhat it does
maxMediainteger1000Max photos/videos per business. 0 = all available.

๐Ÿ“ค Output

Three datasets come out of a single run, all keyed by business ID so joining them later is straightforward.

๐Ÿข Business listings

FieldDescription
search_typeWhich search mode produced this row: search_term or category
queryThe search term or category slug used
total_resultsTotal results reported by Yelp for this search
idYelp business ID
nameBusiness name
urlPublic Yelp business page URL
websiteBusiness's own website, if listed
countryCountry code
address1 / address2 / address3Address lines
stateState/region code
cityCity
zipZIP/postal code
localityLocality/neighborhood-level area name
cross_streetsNearest cross streets, if available
address_shortformShort-form localized address
address_longformLong-form localized address
latitude / longitudeCoordinates
neighborhoodsList of neighborhood names
distanceDistance from the search location, in the unit Yelp returned
timezoneBusiness timezone
work_hours_detailedParsed opening hours by day
localized_hoursLocalized hours text/structure as returned by Yelp
business_special_hoursSpecial/holiday hours, if any
localized_business_special_hoursLocalized special hours text
is_closedWhether the business is permanently closed
is_temp_closedWhether the business is temporarily closed
is_yelp_guaranteedWhether the business has Yelp Guaranteed status
is_chain_businessWhether Yelp flags this as a chain business
is_online_businessWhether this is an online-only business
is_searchable_nearbyWhether Yelp allows nearby-search matching for this business
is_multiple_reservations_allowedWhether multiple reservations are allowed
review_countTotal review count
avg_ratingRounded average star rating
unrounded_avg_ratingUnrounded average star rating
pricePrice level, e.g. $, $$, $$$
localized_priceLocalized price level text
categoriesList of category names
phonePhone number
localized_phoneLocalized/formatted phone number
services_listList of business services offered
localized_attributesLocalized business attributes as returned by Yelp
message_the_businessMessage-the-business info: responsiveness, response_time, reply_rate
from_this_businessOwner-provided info: representative name/bio/role, specialties, history, year_established
primary_photoFull-size URL of the primary photo
primary_photo_thumbThumbnail URL of the primary photo
total_photosTotal photo count reported by Yelp
video_countTotal video count reported by Yelp
base_photosList of business initial photos (url, caption, width, height, type)
service_area_locationsUser-specified service area locations, for businesses that serve a region rather than a fixed address
regular_countRegulars count as reported by Yelp

Example output:

[
{
"search_type": "category",
"query": "autorepair",
"query_location": "90211",
"total_results": null,
"id": "1260m1JUUCE4RBrbKgZ8qg",
"name": "Lucy's Auto Center",
"url": "https://www.yelp.com/biz/lucys-auto-center-los-angeles?utm_source=ashare",
"website": "http://lucysautocenter.com",
"country": "US",
"address1": "5601 W Pico Blvd",
"address2": "",
"address3": "",
"state": "CA",
"city": "Los Angeles",
"zip": "90019",
"locality": "Los Angeles, CA 90019",
"cross_streets": null,
"address_shortform": "5601 W Pico Blvd, Mid-Wilshire",
"address_longform": "5601 W Pico Blvd, Los Angeles, CA 90019",
"latitude": 34.0501405600806,
"longitude": -118.360181049109,
"neighborhoods": [
"Mid-Wilshire"
],
"distance": null,
"timezone": "America/Los_Angeles",
"work_hours_detailed": [
{
"day": "Mon",
"open": "07:30",
"close": "17:00"
},
{
"day": "Tue",
"open": "07:30",
"close": "17:00"
},
{
"day": "Wed",
"open": "07:30",
"close": "17:00"
},
{
"day": "Thu",
"open": "07:30",
"close": "17:00"
},
{
"day": "Fri",
"open": "07:30",
"close": "17:00"
},
{
"day": "Sat",
"open": "08:00",
"close": "12:00"
}
],
"localized_hours": [
"Mon-Fri 7:30 am - 5:00 pm",
"Sat 8:00 am - 12:00 pm"
],
"business_special_hours": null,
"localized_business_special_hours": null,
"is_closed": false,
"is_temp_closed": false,
"is_yelp_guaranteed": false,
"is_chain_business": false,
"is_online_business": null,
"is_searchable_nearby": false,
"is_multiple_reservations_allowed": true,
"review_count": 481,
"avg_rating": 4.5,
"unrounded_avg_rating": 4.3,
"price": null,
"localized_price": null,
"categories": [
"Auto Repair",
"Body Shops"
],
"phone": "3239302525",
"localized_phone": "(323) 930-2525",
"services_list": [
{
"id": "services_car_ford",
"name": "Services Ford"
},
{
"id": "after_hour_car_drop_offs",
"name": "After Hours Drop-Off"
},
{
"id": "dent_repair",
"name": "Dent Repair"
},
{
"id": "services_car_infiniti",
"name": "Services Infiniti"
},
{
"id": "towing",
"name": "Towing"
},
{
"id": "services_car_mazda",
"name": "Services Mazda"
},
{
"id": "services_car_acura",
"name": "Services Acura"
},
{
"id": "services_car_toyota",
"name": "Services Toyota"
},
{
"id": "engine_repair",
"name": "Engine Repair"
},
{
"id": "muffler_and_exhaust",
"name": "Muffler & Exhaust Services"
},
{
"id": "services_car_scion",
"name": "Services Scion"
},
{
"id": "vehicle_inspections",
"name": "Vehicle Inspections"
},
{
"id": "electric_car_repair",
"name": "Electric Car Repair"
},
{
"id": "alignment_suspension",
"name": "Suspension Services"
},
{
"id": "services_car_chrysler",
"name": "Services Chrysler"
},
{
"id": "services_car_kia",
"name": "Services Kia"
},
{
"id": "car_battery_replacement_and_repair",
"name": "Battery Services"
},
{
"id": "services_car_lexus",
"name": "Services Lexus"
},
{
"id": "services_car_gmc",
"name": "Services GMC"
},
{
"id": "auto_paint_restoration",
"name": "Paint Restoration"
},
{
"id": "hybrid_car_repair",
"name": "Hybrid Car Repair"
},
{
"id": "services_car_nissan",
"name": "Services Nissan"
},
{
"id": "services_car_volvo",
"name": "Services Volvo"
},
{
"id": "services_car_mini",
"name": "Services Mini"
},
{
"id": "services_car_porsche",
"name": "Services Porsche"
},
{
"id": "services_car_chevrolet",
"name": "Services Chevrolet"
},
{
"id": "frame_straightening",
"name": "Frame Straightening"
},
{
"id": "services_car_buick",
"name": "Services Buick"
},
{
"id": "services_car_dodge",
"name": "Services Dodge"
},
{
"id": "services_car_bmw",
"name": "Services BMW"
},
{
"id": "services_car_audi",
"name": "Services Audi"
},
{
"id": "auto_glass_repair",
"name": "Glass Repair"
},
{
"id": "tire_wheel",
"name": "Tire Rotation & Wheel Alignment"
},
{
"id": "services_car_jaguar",
"name": "Services Jaguar"
},
{
"id": "services_car_subaru",
"name": "Services Subaru"
},
{
"id": "services_car_cadillac",
"name": "Services Cadillac"
},
{
"id": "vehicle_air_conditioning",
"name": "Air Conditioning Services"
},
{
"id": "free_estimates",
"name": "Free Estimates"
},
{
"id": "services_car_lincoln",
"name": "Services Lincoln"
},
{
"id": "services_car_mercedes_benz",
"name": "Services Mercedes-Benz"
},
{
"id": "vehicle_light",
"name": "Headlight & Taillight Services"
},
{
"id": "services_car_honda",
"name": "Services Honda"
},
{
"id": "services_car_volkswagen",
"name": "Services Volkswagen"
},
{
"id": "offers_frame_testing",
"name": "Frame testing"
},
{
"id": "services_car_mitsubishi",
"name": "Services Mitsubishi"
},
{
"id": "services_car_land_rover",
"name": "Services Land Rover"
},
{
"id": "services_car_fiat",
"name": "Services Fiat"
},
{
"id": "auto_paint_services",
"name": "Paint Services"
},
{
"id": "oil_change",
"name": "Oil Change"
},
{
"id": "auto_brake_services",
"name": "Brake Services"
},
{
"id": "vehicle_electrical",
"name": "Vehicle Electrical Repair"
},
{
"id": "services_car_jeep",
"name": "Services Jeep"
},
{
"id": "transmission",
"name": "Transmission Repair"
},
{
"id": "services_car_hyundai",
"name": "Services Hyundai"
},
{
"id": "auto_collision_repair",
"name": "Collision Repair"
}
],
"localized_attributes": [
{
"id": "BusinessAcceptsCreditCards",
"label": "Accepts Credit Cards",
"value": "Yes"
},
{
"id": "WiFi",
"label": "Wi-Fi",
"value": "Free"
},
{
"id": "OffersMilitaryDiscount",
"label": "Offers Military Discount",
"value": "Yes"
},
{
"id": "GenderNeutralRestrooms",
"label": "Gender-neutral restrooms",
"value": "Yes"
},
{
"id": "BusinessOpenToAll",
"label": "Open to All",
"value": "Yes"
}
],
"message_the_business": {
"responsiveness": "Replies in about <strong>20 mins</strong>",
"response_time": "20 mins",
"reply_rate": "100%"
},
"from_this_business": {
"representative_name": "Mr. T.",
"representative_bio": "Lucy's Auto Center is your one stop shop for complete automotive care and service. We handle all aspects of automotive needs from Tires to Suspension, Mechanical Work and Auto Body. \n\nWe carry an extensive inventory of quality tires consisting of almost all major brand names. Equipped with a state of the art computer Wheel Balancing and a Computer Alignment system that can handle custom wheels and give you before and after comparisons.",
"representative_role": "business_owner",
"specialties": "We are an auto body shop that also provides service and repairs since 1987 in the Los Angeles area. We take every detail into account, from paint and dent work to major car restoration. Whether you've been in an accident or just need a touch up, we've got you covered. We offer parts and accessories as well. Come by today to get an estimate and information!",
"history": "Lucy's Auto Center has been the leader at providing excellent service and qualiy craftsmanship by servicing the vehicles in the community for years. Trained technicians provide the highest level of service that customers deserve. \"We value our customers and believe that good quality workmanship and excellent customer service go hand in hand in providing a satisfactory experience\". That is why the staff at Lucy's strive to go the extra mile to make sure eveyone leaves with a smile on their face. \n \nA family operated shop now run by Lucy, who her father named the shop after. Lucy's has grown throughout the years to be one of the leaders in the tire servicing industry with state of the art equipment, competitive prices, and factory trained technicians. Lucy's Auto Center truly is your One Stop Shop for all your automobile needs.",
"year_established": 2007
},
"primary_photo": "https://s3-media0.fl.yelpcdn.com/bphoto/948MRgoCgOLwONq09TFm7g/o.jpg",
"primary_photo_thumb": "https://s3-media0.fl.yelpcdn.com/bphoto/948MRgoCgOLwONq09TFm7g/ms.jpg",
"total_photos": 41,
"video_count": null,
"base_photos": [
{
"https://s3-media0.fl.yelpcdn.com/bphoto/948MRgoCgOLwONq09TFm7g/o.jpg": {
"caption": "Best place ever. Hit and run in the parking lot at work. They got it done in less than 2 days. Flawless.",
"width": 1440,
"height": 1440,
"type": "business"
}
},
{
"https://s3-media0.fl.yelpcdn.com/bphoto/78h3xEE1JYa8FoG0hfnR7Q/o.jpg": {
"caption": "before & after ! A++",
"width": 1212,
"height": 795,
"type": "business"
}
},
{
"https://s3-media0.fl.yelpcdn.com/bphoto/ltGRHaCsCxr7hQzK4-SHVQ/o.jpg": {
"caption": null,
"width": 1494,
"height": 996,
"type": "business"
}
},
{
"https://s3-media0.fl.yelpcdn.com/bphoto/6Y8yfdBsqqrdpFQPVSGDwg/o.jpg": {
"caption": null,
"width": 1920,
"height": 2560,
"type": "business"
}
}
],
"service_area_locations": null,
"regular_count": 0
}
]

โญ Reviews

FieldDescription
business_idLinks back to the business row
review_idYelp review ID
ratingStar rating of the review
textReview text
languageReview language code
is_featuredWhether Yelp marked this review as featured
is_online_businessWhether this is an online-only business
time_modified_unix / time_modified_formattedReview date, raw and formatted
share_urlDirect link to the review
feedback_useful / feedback_funny / feedback_coolReader feedback counts on the review
keyword_match / matched_keywordsLocal keyword check results, if reviewKeywords was set
previous_reviewsEdit history: earlier versions of the same review by this user
business_owner_replyOwner's reply, if any
mediaPhotos/videos attached to the review, each with type, url, caption, dimensions or duration, and like count
user_idYelp user ID
user_profile_urlDirect link to the reviewer's profile
user_nameReviewer display name
user_locationReviewer's listed location
user_review_countTotal reviews written by this user
user_friend_countReviewer's friend count
user_photo_count / user_video_countMedia uploaded by this user
user_check_in_countReviewer's check-in count
user_elite_yearsYears the reviewer held Yelp Elite status
user_location_rank_titleReviewer's local rank title, if any
has_user_paid_through_yelpWhether the reviewer paid the business through Yelp
user_member_since_unix / user_member_since_formattedWhen the reviewer joined Yelp
user_photo_urlReviewer's avatar URL
user_feedbackRaw feedback object as returned by Yelp

Example output:

[
{
"business_id": "1260m1JUUCE4RBrbKgZ8qg",
"review_id": "WyjkjmDEXmGHIDgeJB3deQ",
"rating": 5,
"text": "Dropped off my car today for a bumper replacement, dent, and some scratches. Avo was warm and the most reasonable and transparent repair person I have met in my life! he insisted on not fixing several scratches i can fix myself, and openly talked out my options and things to consider for my other repairs. gave me some great tips on how car shops work and gave me a fair and reasonable estimate. cant wait to get the car back!\n\n[update] they finished exactly when they said and the price was exactly what they estimated, even though they did a bit of extra work. can't recommend this place more. best car shop experience in my life!",
"language": "en",
"is_featured": false,
"is_online_business": false,
"time_modified_unix": 1784331338,
"time_modified_formatted": "07/17/2026 11:35 PM",
"share_url": "https://www.yelp.com/biz/lucys-auto-center-los-angeles?hrid=WyjkjmDEXmGHIDgeJB3deQ&utm_source=ashare",
"feedback_useful": 0,
"feedback_funny": 0,
"feedback_cool": 0,
"keyword_match": false,
"matched_keywords": [],
"previous_reviews": [],
"business_owner_reply": null,
"media": [],
"user_id": "JCLvWDKrRQB8BhzF5RrD0A",
"user_profile_url": "https://www.yelp.com/user_details?userid=JCLvWDKrRQB8BhzF5RrD0A",
"user_name": "EM P.",
"user_location": "Los Angeles, CA",
"user_review_count": 3,
"user_friend_count": 297,
"user_photo_count": 0,
"user_video_count": 0,
"user_check_in_count": 0,
"user_elite_years": null,
"user_location_rank_title": "user",
"has_user_paid_through_yelp": false,
"user_member_since_unix": 1472884644,
"user_member_since_formatted": "09/03/2016 06:37 AM",
"user_photo_url": "https://s3-media0.fl.yelpcdn.com/photo/5bDBT5PQPARLP2lNENRRWA/ms.jpg",
"user_feedback": {
"cool": false,
"funny": false,
"useful": false
}
},
{
"business_id": "1260m1JUUCE4RBrbKgZ8qg",
"review_id": "oP_3Wj4L-bqaidXCZyjXaQ",
"rating": 5,
"text": "Found Lucy's on a whim while going through an emergency with my car and I could not be more grateful for finding this shop!! This shop is woman and family owned/run and truly made the entire mechanic shop process so easy. Avo, the owner, is such a helpful and truly funny guy. And everyone on his team is amazing as well! I've always felt so lost when visiting a mechanic shop and this really was the best experience I could've asked for. Shoutout Avo, Lucy & the whole Lucy's Auto team!!",
"language": "en",
"is_featured": false,
"is_online_business": false,
"time_modified_unix": 1783895678,
"time_modified_formatted": "07/12/2026 10:34 PM",
"share_url": "https://www.yelp.com/biz/lucys-auto-center-los-angeles?hrid=oP_3Wj4L-bqaidXCZyjXaQ&utm_source=ashare",
"feedback_useful": 0,
"feedback_funny": 0,
"feedback_cool": 0,
"keyword_match": false,
"matched_keywords": [],
"previous_reviews": [],
"business_owner_reply": null,
"media": [],
"user_id": "jcvCzMCkRAh_4tlfIUHWnQ",
"user_profile_url": "https://www.yelp.com/user_details?userid=jcvCzMCkRAh_4tlfIUHWnQ",
"user_name": "Emma F.",
"user_location": "Los Angeles, CA",
"user_review_count": 110,
"user_friend_count": 1,
"user_photo_count": 102,
"user_video_count": 0,
"user_check_in_count": 0,
"user_elite_years": [
2026,
2025,
2024
],
"user_location_rank_title": "user",
"has_user_paid_through_yelp": false,
"user_member_since_unix": 1432335012,
"user_member_since_formatted": "05/22/2015 10:50 PM",
"user_photo_url": "https://s3-media0.fl.yelpcdn.com/photo/IWJDE74gM8VLm8_tXi5RAQ/ms.jpg",
"user_feedback": {
"cool": false,
"funny": false,
"useful": false
}
}
]

๐Ÿ“ธ Media (photos/videos)

FieldDescription
business_idLinks back to the business row
media_typephoto or video
media_urlFull original size URL
media_captionCaption text
media_date_unix / media_date_formattedUpload date, raw and formatted
media_sourceSource tag Yelp attaches to the media, if any
media_duration_secondsVideo duration, null for photos
likesLike count
indexPosition of the media item in Yelp's own ordering
author_idYelp user ID of whoever posted the media
author_profile_urlDirect link to the author's profile
author_nameAuthor display name
author_first_name / author_last_initialAuthor's name broken out
author_friend_countAuthor's friend count
author_elite_yearsYears the author held Yelp Elite status
author_review_countTotal reviews written by the author
author_video_countTotal videos uploaded by the author
author_avatarAuthor's avatar URL

Example output:

[
{
"business_id": "1260m1JUUCE4RBrbKgZ8qg",
"media_type": "photo",
"media_url": "https://s3-media0.fl.yelpcdn.com/bphoto/948MRgoCgOLwONq09TFm7g/o.jpg",
"media_caption": "Best place ever. Hit and run in the parking lot at work. They got it done in less than 2 days. Flawless.",
"media_date_unix": 1506123515,
"media_date_formatted": "09/22/2017 11:38 PM",
"media_source": null,
"media_duration_seconds": null,
"likes": 4,
"index": 0,
"author_id": "hW72YNywr2uxEB6vqFUYkg",
"author_profile_url": "https://www.yelp.com/user_details?userid=hW72YNywr2uxEB6vqFUYkg",
"author_name": "Anne H.",
"author_first_name": "Anne",
"author_last_initial": "H",
"author_friend_count": 11,
"author_elite_years": null,
"author_review_count": 36,
"author_video_count": 0,
"author_avatar": "https://s3-media0.fl.yelpcdn.com/photo/yv6TG-ud5TMW8ILXs53LxA/o.jpg"
},
{
"business_id": "1260m1JUUCE4RBrbKgZ8qg",
"media_type": "photo",
"media_url": "https://s3-media0.fl.yelpcdn.com/bphoto/78h3xEE1JYa8FoG0hfnR7Q/o.jpg",
"media_caption": "before & after ! A++",
"media_date_unix": 1506386908,
"media_date_formatted": "09/26/2017 12:48 AM",
"media_source": null,
"media_duration_seconds": null,
"likes": 0,
"index": 1,
"author_id": "-Po8Cwff2WAIdBbQpnOZpA",
"author_profile_url": "https://www.yelp.com/user_details?userid=-Po8Cwff2WAIdBbQpnOZpA",
"author_name": "T C.",
"author_first_name": "T",
"author_last_initial": "C",
"author_friend_count": 20,
"author_elite_years": null,
"author_review_count": 46,
"author_video_count": 0,
"author_avatar": null
},
{
"business_id": "1260m1JUUCE4RBrbKgZ8qg",
"media_type": "photo",
"media_url": "https://s3-media0.fl.yelpcdn.com/bphoto/ltGRHaCsCxr7hQzK4-SHVQ/o.jpg",
"media_caption": null,
"media_date_unix": 1491414702,
"media_date_formatted": "04/05/2017 05:51 PM",
"media_source": null,
"media_duration_seconds": null,
"likes": 1,
"index": 2,
"author_id": null,
"author_profile_url": null,
"author_name": null,
"author_first_name": null,
"author_last_initial": null,
"author_friend_count": null,
"author_elite_years": null,
"author_review_count": null,
"author_video_count": null,
"author_avatar": null
}
]

๐Ÿ’ก Use cases

๐Ÿ“ž Local business lead generation

Search by category and location, pull phone numbers, addresses, and websites for every matching business, no manual copy-pasting from Yelp search pages.

๐Ÿ•ต๏ธ Reputation monitoring

Scrape reviews for a business or a whole category on a schedule, filter for low ratings, and check for keywords like "refund" or "manager" to catch problems early.

๐Ÿ“Š Competitor research

Pull a competitor's reviews and photos, see what customers actually say and what the business looks like inside, not just their star rating.

๐Ÿ”Ž Review sentiment and keyword analysis

Use the built in keyword check to flag reviews mentioning specific terms across hundreds of businesses at once, no separate NLP step needed for simple keyword tracking.

๐Ÿ–ผ๏ธ Media collection

Grab every photo and video from a business's Yelp page in original resolution for cataloging, comparison, or archiving.


๐Ÿš€ Getting started via API

Python - search by category with reviews, media, and keyword matching

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run_input = {
"mainMode": "search",
"searchMode": "category",
"category": "autorepair",
"location": "90211",
"maxResults": 10,
"scrapeReviews": True,
"maxReviews": 50,
"reviewKeywords": ["bad", "good", "friend", "happy"],
"scrapeMedia": True,
"maxMedia": 50,
}
run = client.actor("mof1re/yelp-scraper-pro-all-in-one").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["name"], item["avg_rating"], item["review_count"])

Python - listing URLs, IDs, and aliases mixed together

run_input = {
"mainMode": "listing_urls",
"listingUrls": [
"https://www.yelp.com/biz/best-bagel-and-coffee-new-york",
"best-bagel-and-coffee-new-york",
"j1S3NUrkB3BVT49n_e76NQ",
],
"scrapeBusinessDetails": True,
"scrapeReviews": True,
"maxReviews": 100,
"scrapeMedia": True,
"maxMedia": 100,
}
run = client.actor("mof1re/yelp-scraper-pro-all-in-one").call(run_input=run_input)

Python - search by keyword, listing URLs section skipped

run_input = {
"mainMode": "listing_urls",
"listingUrls": [
"https://www.yelp.com/biz/best-bagel-and-coffee-new-york",
"j1S3NUrkB3BVT49n_e76NQ",
],
"location": "90211",
"searchQuery": "auto repair service",
"searchMode": "query",
"scrapeBusinessDetails": True,
"scrapeMedia": False,
"scrapeReviews": True,
"maxReviews": 100,
}
run = client.actor("mof1re/yelp-scraper-pro-all-in-one").call(run_input=run_input)

JavaScript / Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('mof1re/yelp-scraper-pro-all-in-one').call({
mainMode: 'search',
searchMode: 'category',
category: 'autorepair',
location: '90211',
scrapeReviews: true,
scrapeMedia: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach(item => console.log(item.name, item.avg_rating));

โ“ Frequently asked questions

What is a Yelp scraper?

A Yelp scraper extracts business data, reviews, or photos and videos from Yelp automatically, without manually browsing and copying pages one by one.

Can this actor scrape Yelp reviews?

Yes. Turn on scrapeReviews and every business found gets its reviews pulled, including owner replies, ratings, dates, and any attached photos or videos.

Can it scrape Yelp photos and videos?

Yes. Turn on scrapeMedia to get every photo and video for a business in original size, with captions, dates, and author info.

Is there a limit on how many reviews or photos I can get?

No actor-side limit. You get everything Yelp has for that business, up to whatever maxReviews or maxMedia you set (or all of it, if you set them to 0).

Is there a limit on search results?

Yelp itself caps search and category results at 240. You can work around this by running multiple searches with different sort orders or filters.

Do I need to know the exact Yelp category slug?

No. The actor's input form links to the full Yelp category list with copyable slugs, so you don't have to guess.

Can I mix URLs, business IDs, and aliases in the same run?

Yes, listingUrls accepts all three formats in the same list.

Does it use a browser?

No. It's a pure HTTP based scraper built on a full reverse engineering of the Yelp mobile app, so it runs fast without launching a browser.

Can I filter reviews by keyword?

Yes. Add your keywords to reviewKeywords and each review gets checked locally, with a per-keyword match flag and an overall match flag in the output.


๐Ÿ”— See also

Need a scraper for another platform? Check out: