Google Maps Scraper - Business Leads, Phone & Website Extractor
Pricing
Pay per usage
Google Maps Scraper - Business Leads, Phone & Website Extractor
Extract business leads from Google Maps at scale. Get name, phone, website, full address, rating & reviews for any category - in any city or entire country.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
cashify
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Google Maps Scraper
Extract business leads from Google Maps at scale — for any business category, in any city or country.
For every business you get: name, category, full address, phone number, website, rating, review count, coordinates, Google Maps link, place ID, and (for the first page of each search) hours and featured reviews.
Features
- Search by keyword — e.g.
restaurants in New York,dentists in London. - Search a whole country — pick a country + business type and it fans out across every city.
- Search specific coordinates + zoom — target a precise area.
- Up to ~120 results per search (Google's own cap), with all core contact fields.
- Human-like scraping — randomized scroll speed and jitter, rate limiting, and automatic retry on blocks to stay under the radar.
- Web UI + REST API — run it from the browser or integrate it into your own apps.
- Export to CSV / Excel / JSON.
Requirements
- Python 3.10+
- Node.js 18+ (for the web UI)
- Google Chrome
Install & Run
# 1. Python backendpython -m venv .venv.venv\Scripts\pip install -r requirements.txt# 2. Web UI (first time only)python run.py install# 3. Start (backend :8000 + UI :3000)python run.py
Then open http://localhost:3000, enter a search, and press Run.
To run only the REST API (no UI):
$python run.py backend
REST API
Create a scrape task:
POST http://localhost:8000/api/tasks/create-task-asyncContent-Type: application/json{"scraper_name": "google_maps_scraper","data": {"queries": ["mobile shops in Agra"],"country": null,"business_type": "","max_cities": null,"max_results": 120,"lang": "en","coordinates": "","zoom_level": 14,"enable_reviews_extraction": false,"max_reviews": null,"reviews_sort": "newest","api_key": ""}}
Country-wide example (all cities in India, 50 per city):
{ "country": "IN", "business_type": "gyms", "max_cities": null, "max_results": 50, "queries": [] }
Fetch results: POST /api/tasks/<id>/results · Download: POST /api/tasks/<id>/download.
See fields.md for the full list of output fields and advanced.md for advanced options.
Legal
This tool is for educational and lawful data-collection purposes only. You are responsible for complying with Google's Terms of Service and applicable data-protection / privacy laws in your jurisdiction when using it.