VOOZH about

URL: https://apify.com/tuguidragos/yelp-business-contact-scraper

โ‡ฑ Yelp Business Contact Scraper ยท Apify


๐Ÿ‘ Yelp Business Contact Scraper avatar

Yelp Business Contact Scraper

Under maintenance

Pricing

Pay per usage

Go to Apify Store

Yelp Business Contact Scraper

Under maintenance

Scrape verified business contact data from Yelp listings across all categories. Extract company names, phone numbers, emails, websites, addresses, and customer ratings. Perfect for B2B outreach, local lead generation, sales prospecting, and market research. Fast Yelp scraper. Export to CSV, JSON.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

๐Ÿ‘ ศšugui Dragoศ™

ศšugui Dragoศ™

Maintained by Community

Actor stats

2

Bookmarked

37

Total users

1

Monthly active users

6 months ago

Last modified

Share

๐Ÿ‘ Apify Actor
๐Ÿ‘ Node.js
๐Ÿ‘ JavaScript
๐Ÿ‘ Crawlee
๐Ÿ‘ Playwright
๐Ÿ‘ License: Proprietary

Target. Extract. Grow. The world's Yelp data at your fingertips.


Features

  • Multi-domain Global Support: Seamlessly scrape from 32 different Yelp country domains.
  • Comprehensive Data Extraction: Get every detail including Business name, address, phone, website, ratings, reviews, categories, hours, amenities, and photos.
  • Optimized for Lead Generation: Perfect for building B2B datasets, market analysis, and sales prospecting.
  • Configurable & Scalable: Control result limits per search term, with automatic pagination handling.
  • Robust Error Handling: Graceful recovery from missing data and page load failures.
  • Thread-safe Operation: Concurrent crawling with proper state management for high-volume scraping.
  • Language-aware Selectors: Optimized selectors for different language versions of Yelp to ensure high accuracy.

Input Parameters

ParameterTypeRequiredDefaultDescription
countrystringYesUnited StatesThe Yelp country domain to scrape from. Select from 32 supported countries.
searchTermsarrayYes-List of keywords to search for (e.g., "pizza", "plumber", "cafe"). Multiple terms will be searched sequentially.
locationstringYes-The city or area to search in (e.g., "New York", "Berlin", "Tokyo").
maxResultsintegerNo100Maximum number of business listings to scrape per search term. Range: 1-200.

Example Input

{
"country":"United States",
"searchTerms":["pizza","sushi"],
"location":"New York",
"maxResults":50
}

Input for German Yelp

{
"country":"Germany",
"searchTerms":["restaurant","cafe"],
"location":"Berlin",
"maxResults":100
}

Input for Japanese Yelp

{
"country":"Japan",
"searchTerms":["restaurant"],
"location":"Tokyo",
"maxResults":25
}

Output Format

Each scraped business is stored as a JSON object with the following fields:

FieldTypeDescription
01_scrapedAtstringISO 8601 timestamp of when the data was scraped
02_urlstringFull URL of the business detail page
03_countrystringCountry/domain the business was scraped from
04_searchTermstringThe search term used to find this business
05_searchLocationstringThe location used in the search
06_namestringBusiness name
07_ratingstringStar rating (e.g., "4.5 star rating")
08_reviewCountstringNumber of reviews
09_addressstringFull business address
10_phonestringPhone number
11_websitestringBusiness website URL
12_priceRangestringPrice range indicator
13_categoriesarrayList of business categories
14_businessHoursarrayOperating hours for each day
15_amenitiesAndMorearrayList of amenities and features
16_photoUrlsarrayURLs of business photos (up to 10)
17_reviewsarrayRecent reviews with author, rating, date, and text

Sample Output

{
"01_scrapedAt":"2024-01-15T10:30:00.000Z",
"02_url":"https://www.yelp.com/biz/joes-pizza-new-york",
"03_country":"United States",
"04_searchTerm":"pizza",
"05_searchLocation":"New York",
"06_name":"Joe's Pizza",
"07_rating":"4.5 star rating",
"08_reviewCount":"2,847 reviews",
"09_address":"7 Carmine St, New York, NY 10014",
"10_phone":"(212) 366-1182",
"11_website":"https://www.joespizzanyc.com",
"12_priceRange":"$",
"13_categories":["Pizza","Italian"],
"14_businessHours":[
"Mon: 10:00 AM - 4:00 AM",
"Tue: 10:00 AM - 4:00 AM",
"Wed: 10:00 AM - 4:00 AM",
"Thu: 10:00 AM - 4:00 AM",
"Fri: 10:00 AM - 5:00 AM",
"Sat: 10:00 AM - 5:00 AM",
"Sun: 10:00 AM - 4:00 AM"
],
"15_amenitiesAndMore":["Casual","Good for Groups","Take Out"],
"16_photoUrls":[
"https://s3-media0.fl.yelpcdn.com/bphoto/example1.jpg",
"https://s3-media0.fl.yelpcdn.com/bphoto/example2.jpg"
],
"17_reviews":[
{
"author":"John D.",
"rating":"5 star rating",
"date":"1/10/2024",
"text":"Best pizza in NYC! The classic slice is perfection."
}
]
}

Supported Yelp Domains

The actor supports the following 32 Yelp country domains:

CountryDomain
๐Ÿ‡ฆ๐Ÿ‡ท Argentinayelp.com.ar
๐Ÿ‡ฆ๐Ÿ‡บ Australiayelp.com.au
๐Ÿ‡ฆ๐Ÿ‡น Austriayelp.at
๐Ÿ‡ง๐Ÿ‡ช Belgiumyelp.be
๐Ÿ‡ง๐Ÿ‡ท Brazilyelp.com.br
๐Ÿ‡จ๐Ÿ‡ฆ Canadayelp.ca
๐Ÿ‡จ๐Ÿ‡ฑ Chileyelp.cl
๐Ÿ‡จ๐Ÿ‡ฟ Czech Republicyelp.cz
๐Ÿ‡ฉ๐Ÿ‡ฐ Denmarkyelp.dk
๐Ÿ‡ซ๐Ÿ‡ฎ Finlandyelp.fi
๐Ÿ‡ซ๐Ÿ‡ท Franceyelp.fr
๐Ÿ‡ฉ๐Ÿ‡ช Germanyyelp.de
๐Ÿ‡ญ๐Ÿ‡ฐ Hong Kongyelp.com.hk
๐Ÿ‡ฎ๐Ÿ‡ช Irelandyelp.ie
๐Ÿ‡ฎ๐Ÿ‡น Italyyelp.it
๐Ÿ‡ฏ๐Ÿ‡ต Japanyelp.co.jp
๐Ÿ‡ฒ๐Ÿ‡พ Malaysiayelp.my
๐Ÿ‡ฒ๐Ÿ‡ฝ Mexicoyelp.com.mx
๐Ÿ‡ณ๐Ÿ‡ฑ Netherlandsyelp.nl
๐Ÿ‡ณ๐Ÿ‡ฟ New Zealandyelp.co.nz
๐Ÿ‡ณ๐Ÿ‡ด Norwayyelp.no
๐Ÿ‡ต๐Ÿ‡ญ Philippinesyelp.com.ph
๐Ÿ‡ต๐Ÿ‡ฑ Polandyelp.pl
๐Ÿ‡ต๐Ÿ‡น Portugalyelp.pt
๐Ÿ‡ธ๐Ÿ‡ฌ Singaporeyelp.com.sg
๐Ÿ‡ช๐Ÿ‡ธ Spainyelp.es
๐Ÿ‡ธ๐Ÿ‡ช Swedenyelp.se
๐Ÿ‡จ๐Ÿ‡ญ Switzerlandyelp.ch
๐Ÿ‡น๐Ÿ‡ผ Taiwanyelp.com.tw
๐Ÿ‡น๐Ÿ‡ท Turkeyyelp.com.tr
๐Ÿ‡ฌ๐Ÿ‡ง United Kingdomyelp.co.uk
๐Ÿ‡บ๐Ÿ‡ธ United Statesyelp.com

Technical Details

Technology Stack

  • Runtime: Node.js
  • Web Scraping Framework: Crawlee with Playwright
  • Browser: Chromium (headless mode)
  • Platform: Apify

Architecture

The actor uses a two-phase scraping approach:

  1. LIST phase: Scrapes search result pages to collect business URLs
  2. DETAIL phase: Visits each business page to extract comprehensive data

Configuration

  • Navigation timeout: 120 seconds
  • Request handler timeout: 180 seconds
  • Maximum concurrency: 5 parallel requests
  • Maximum retries: 3 per request
  • Headless browser with anti-detection measures

Anti-Detection Features

  • Custom HTTP headers mimicking real browser requests
  • Disabled automation detection flags
  • Proxy support through Apify proxy configuration

Cost Estimation

The cost depends on the number of businesses scraped and the complexity of the pages:

  • Approximate compute units per 100 businesses: 0.5-1.0 CU
  • Each search term generates additional requests for pagination
  • Detail pages require more resources than list pages

For a typical run scraping 100 businesses with 2 search terms:

  • Estimated compute units: 1-2 CU
  • Estimated time: 5-15 minutes

Limitations

  1. Maximum results per search term: 200 (Yelp pagination limit)
  2. Rate limiting: Yelp may temporarily block requests if too many are made in a short period
  3. Dynamic content: Some business information may not be available if loaded via JavaScript after initial page load
  4. Regional availability: Not all businesses have complete information across all fields
  5. Review limit: Only the first 5 reviews are extracted per business
  6. Photo limit: Maximum of 10 photos are extracted per business

Error Handling

The actor handles errors gracefully:

  • Missing selectors: Falls back to alternative selectors
  • Page load failures: Retries up to 3 times
  • Missing data: Fields are set to null if not found
  • Failed business pages: Error is logged and scraping continues with next business

Usage Tips

  1. Start with a small maxResults value (10-20) to test your search parameters
  2. Use specific search terms for better results
  3. Combine multiple search terms in a single run for efficiency
  4. Monitor the run logs for any warnings about blocked requests

FAQ / Troubleshooting

Why am I getting fewer results than maxResults?

Yelp often filters search results or limits the total number of available pages for a specific query. If you request 200 results but only get 150, it means Yelp only displayed 150 unique businesses for those search terms. Solution: Try adding more specific search terms or broader location queries.

How can I speed up the scraping?

The actor is configured to use optimal concurrency (up to 5 parallel threads) to balance speed and safety. Tip: Run multiple actor instances with different sets of search terms if you need massive scale.

Is this scraper safe from blocking?

Yes. We use advanced browser fingerprinting and proxy rotation to mimic real human behavior. However, extremely aggressive scraping (thousands of requests per minute) can still trigger temporary blocks. The actor handles this by automatically retrying.

Can I extract business emails?

Yelp does not publicly display email addresses. This actor extracts the business website, which you can then use with a separate email extraction tool or visit manually to find contact details.

Why are some fields null?

Not all businesses provide every piece of information. If a business hasn't listed their price range or amenities, those fields will be returned as null. This is normal behavior and accurate to the source data.


Built with ๐Ÿฉถ for the Apify community ๐Ÿซก

You might also like

Yelp Email Scraper

scrapebridge/yelp-email-scraper

Yelp Email Scraper extracts business emails, contact details, phone numbers, websites, ratings, reviews, addresses, categories, and profile URLs from Yelp listings. Ideal for lead generation, local business research, sales prospecting, marketing campaigns, and data enrichment.

1

Yelp Email Scraper

scrapeflow/yelp-email-scraper

Extract business emails from Yelp with ease ๐Ÿ“ง๐Ÿ“ Scrape company names, emails, phone numbers, addresses, ratings, websites, and more from Yelp listings. Perfect for lead generation, local outreach, market research, and competitor analysis. Turn Yelp data into real business opportunities ๐Ÿš€

Yelp Email Scraper

scrapapi/yelp-email-scraper

Extract business contact emails from Yelp listings using the Yelp Email Scraper. Collect business names, emails, websites, phone numbers, addresses, and Yelp profile links automatically. Ideal for local lead generation and outreach campaigns.

Yelp Business Info Scraper

scraper-engine/yelp-business-info-scraper

Extract detailed business information from Yelp with the Yelp Business Info Scraper. Collect business names, addresses, phone numbers, websites, ratings, categories, and review counts automatically. Ideal for local lead generation and market research.

๐Ÿ‘ User avatar

Scraper Engine

2

Yelp Business Info Scraper

scrapio/yelp-business-info-scraper

Extract detailed business data from Yelp using the Yelp Business Info Scraper. Collect business names, addresses, phone numbers, websites, ratings, and review counts automatically. Ideal for lead generation, local business research, and market analysis.

Yelp Business Info Scraper

simpleapi/yelp-business-info-scraper

Extract business details from Yelp listings using this scraper. Collect business names, addresses, phone numbers, ratings, review counts, categories, and website links. Useful for lead generation, local market research, competitor analysis, and building datasets of businesses from Yelp.

Yelp Business Info Scraper

scrapier/yelp-business-info-scraper

Extract detailed business information from Yelp with the Yelp Business Info Scraper. Collect business names, ratings, reviews count, phone numbers, addresses, categories, price ranges, and more. Perfect for market research, lead generation, competitive analysis, and local business insights.