🏢 Yellow Pages US Scraper
Pricing
from $3.99 / 1,000 results
🏢 Yellow Pages US Scraper
Pricing
from $3.99 / 1,000 results
Rating
0.0
(0)
Developer
Scrapio
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
Scrape Yellow Pages US business listings into clean, structured data — business name, phone, full address, website, star rating, review count, review snippets, photos and categories — from a simple search term + location or from bulk search URLs.
⚡ Streams results into the dataset as each listing is parsed — no waiting until the run ends for partial output. Refresh the run page and watch rows appear live.
✨ Why choose this scraper?
- 🧠 Smart proxy auto-escalation — starts direct (no proxy, cheapest and fastest), then automatically falls back to a datacenter proxy, then a US residential proxy if Yellow Pages pushes back. Once on residential it stays there. You never have to think about it.
- 🔎 Search OR bulk URLs — type
Dentist+New Yorkand hit Start, or paste a list of Yellow Pages search URLs. Both work; mix them freely. - 📍 Location auto-correct — loose input like
austin txis resolved to the Yellow Pages canonical form (Austin, TX) via their own autosuggest service. - 🧱 Browser TLS impersonation — every request carries a genuine Chrome/Edge fingerprint (via
curl_cffi), so Yellow Pages serves real HTML instead of a bot page — without the cost of a headless browser. - 📄 Automatic pagination — follows the "Next" link to the last page of every search.
- 📊 Sectioned dataset tabs — Overview, Contact, Reviews and Media views built in.
- 💳 Pay per event — you pay only for listings actually delivered.
🔑 Key Features
| Field extracted | |
|---|---|
| 📢 | Paid-ad flag (isAd) — sponsored vs organic result |
| 🏢 | Business name |
| 📍 | Street address |
| 📞 | Phone number |
| 🌐 | Business website |
| ⭐ | Star rating (1–5) |
| 🗳️ | Review count |
| 💬 | Customer review snippet |
| ℹ️ | "From Business" description snippet |
| 🖼️ | Business photo (full-size URL) |
| 🏷️ | Category list |
| 🔗 | Yellow Pages profile URL |
📥 Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
search | string | ❌* | Dentist | Business type, category or company name |
location | string | ❌* | New York | US city, City, ST, or ZIP code |
startUrls | array | ❌* | – | Bulk Yellow Pages search-result URLs |
maxItems | integer | ❌ | 50 | Cap on total listings (0 = unlimited) |
debugMode | boolean | ❌ | false | Verbose debug logging in the run log (troubleshooting) |
requestDelay | number | ❌ | 1.0 | Base seconds between requests (jitter added) |
proxyConfiguration | object | ❌ | direct | Proxy override — defaults to no proxy |
* Provide either search + location or startUrls (or both).
Example input
{"search": "Dentist","location": "New York, NY","maxItems": 50,"requestDelay": 1.0,"proxyConfiguration": { "useApifyProxy": false }}
Bulk URL example
{"startUrls": ["https://www.yellowpages.com/search?search_terms=plumber&geo_location_terms=New+York%2C+NY","https://www.yellowpages.com/search?search_terms=coffee&geo_location_terms=Austin%2C+TX"],"maxItems": 200}
📤 Output
Each dataset row is one business listing. Empty fields are omitted, exactly like the reference output.
{"isAd": false,"url": "https://www.yellowpages.com/new-york-ny/mip/dr-kara-mason-dmd-5721648","name": "Dr. Kara Mason, DMD","address": "30 E 60th St Rm 503, New York, NY 10022","phone": "(212) 355-2195","website": "http://www.gentledentalnyc.com","rating": 5,"ratingCount": 175,"reviewSnippet": "Extremely knowledgeable of craft with sincere care for her patients.\"","image": "https://i4.ypcdn.com/blob/80cd8b97ee48d0b7715eacdc0801d77c44cc978b","categories": ["Dentists", "Oral & Maxillofacial Surgery"]}
| Field | Type | Description |
|---|---|---|
isAd | boolean | true for paid/sponsored listings, false for organic |
url | string | Yellow Pages business profile URL |
name | string | Business name |
address | string | Street address |
phone | string | Phone number |
website | string | Business website (when listed) |
rating | number | Star rating, 1–5 (when rated) |
ratingCount | integer | Number of reviews (when rated) |
reviewSnippet | string | A sample customer review (when present) |
infoSnippet | string | "From Business" description (when present) |
image | string | Business photo URL (when present) |
categories | array | Yellow Pages category labels |
The dataset has four ready-made views — 📋 Overview, 📞 Contact, ⭐ Ratings & Reviews and 🖼️ Media — so you can focus on one section at a time.
🚀 How to Use (Apify Console)
- Log in at console.apify.com → Actors.
- Open Yellow Pages US Scraper.
- Enter a 🔎 Search term and 📍 Location — or paste 🌐 URLs.
- Set 🔢 Maximum listings (default 50).
- Click Start.
- Watch listings stream into the run log and dataset in real time.
- When the run finishes, open the Output tab.
- Export to JSON / CSV / Excel or pull via API.
🤖 Use via API
curl -X POST "https://api.apify.com/v2/acts/YOUR~yellow-pages-us-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"search": "Plumber","location": "Austin, TX","maxItems": 50}'
🛡️ How blocking is handled
Yellow Pages occasionally rate-limits aggressive traffic. This actor handles it automatically:
- Direct — requests go straight to Yellow Pages (no proxy cost).
- On a block → datacenter proxy.
- On another block → US residential proxy (sticky from here on).
- Residential is retried up to 3 times with a fresh IP and a cooldown.
Every escalation is logged clearly in the run log, e.g.
🔄 Yellow Pages blocked the request on DIRECT — switching to DATACENTER proxy.
💡 Best Use Cases
- 📇 Lead generation — build B2B contact lists by category and city.
- 📊 Local market research — map competitors in any US metro.
- 🗺️ Local SEO audits — track ratings, reviews and categories.
- 🤝 Sales prospecting — phone/website lists for outreach.
💳 Pricing
This actor uses the pay-per-event model. You are charged once per business listing successfully delivered to the dataset (listing-scraped). Runs that return no data cost nothing beyond the standard run start. The actor stops cleanly when a configured spend limit is reached.
❓ FAQ
Do I need a proxy? No. The actor runs direct by default and only turns proxies on if Yellow Pages blocks it — and it does that for you.
Can I scrape multiple cities at once? Yes — use Bulk URL mode and paste one search URL per city.
Why are some fields missing on a row? Yellow Pages does not list a phone, website, rating or photo for every business. Empty fields are omitted rather than returned as null.
How many results per search? Yellow Pages caps each search at roughly 30 pages. Use a more specific location to surface different businesses.
Does it scrape individual business detail pages? No — it collects everything from the search-result cards, which is fast and covers all the fields above.
📨 Support & Feedback
Found a bug or need an extra field? Contact dev.scraperengine@gmail.com or open an issue on the actor's Apify page.
⚖️ Legal
This scraper collects only publicly available data from Yellow Pages. You are responsible for using the data in compliance with applicable laws (GDPR, CCPA, anti-spam regulations) and the Yellow Pages Terms of Service.
