π₯ Fast & Unlimited Google Maps Data Extraction - Extract 100+ business leads per search with auto-scrolling, proxy rotation, and email discovery. Modern GUI + CLI. 100% Free & Open Source.
- π 100+ Results Per Search - Auto-scrolls to load ALL available businesses
- β‘ Blazing Fast - Playwright-based with 7000+ proxy rotation
- π― Smart Extraction - Company name, website, email, phone, address, category
- π Anti-Detection - Stealth mode, proxy rotation, human-like delays
- π» Modern GUI - Beautiful CustomTkinter interface with real-time progress
- π₯οΈ CLI Mode - Command line interface for automation
- π§ Email Discovery - Automatically extracts emails from business websites
- π CSV Export - Professional UTF-8 CSV output
- π 100% Free - Open source, no API keys needed
| Field | Description | Example |
|---|---|---|
company_name |
Business name | "ACME Electric LLC" |
website |
Business website | "https://acmelectric.com" |
email |
Contact email | "contact@acmelectric.com" |
category |
Business type | "Electrical Contractor" |
phone |
Phone number | "(555) 123-4567" |
address |
Full address | "123 Main St, Dallas, TX" |
Example Output:
company_name,website,email,category,phone,address
"Clements Electric",https://clementselectric.com,info@clementselectric.com,"Electrician",(214) 555-0100,"Dallas, TX"
"Mr. Electric of Dallas",https://mrelectric.com,dallas@mrelectric.com,"Electrical Service",(972) 555-0200,"Dallas, TX"# Clone the repository
git clone https://github.com/yourusername/google-maps-scraper.git
cd google-maps-scraper
# Install dependencies
pip install -r requirements.txt
playwright install chromiumpython gui.pypython orchestrator/main.py --query "restaurants" --location "New York"Double-click run_gui.bat or run.bat
Launch the modern desktop app and enter:
- Search Query:
Electric Contractor - Location:
Texas - Click Start β Watch 100+ results appear in real-time!
# Basic search
python orchestrator/main.py --query "restaurants" --location "New York"
# With auto-proxy rotation (recommended for large batches)
python orchestrator/main.py \
--query "plumbers" \
--location "Chicago" \
--fetch-proxies \
--use-proxies \
--max-results 200
# Full options
python orchestrator/main.py \
--query "dentists" \
--location "Miami FL" \
--output dentists_miami.csv \
--workers 100 \
--use-proxies| Option | Short | Description | Default |
|---|---|---|---|
--query |
-q |
Search term (e.g., "restaurants") | Prompt |
--location |
-l |
Location (e.g., "New York") | Prompt |
--output |
-o |
Output CSV filename | results.csv |
--workers |
-w |
Concurrent workers | 50 |
--max-results |
-m |
Max results (None=unlimited) | None |
--use-proxies |
Enable proxy rotation | False | |
--fetch-proxies |
Auto-fetch 7000+ free proxies | False |
# In orchestrator/config.py
DEFAULT_WORKERS = 50 # Increase for faster scraping
TIMEOUT = 30 # Request timeout in seconds
MAX_RETRIES = 3 # Retry failed requestsEnable --fetch-proxies to automatically download 7000+ working proxies:
python orchestrator/main.py --query "hotels" --location "LA" --fetch-proxies --use-proxiesCreate proxies.txt in project root:
http://user:pass@proxy1.com:8080
http://proxy2.com:8080
socks5://proxy3.com:1080
http://user:password@host:port
- β Avoid rate limits
- β Faster scraping with rotation
- β Bypass geo-restrictions
- β 10x more results per hour
- Python 3.8+ (Download)
- Windows 10/11 (Linux/Mac support coming soon)
- 4GB RAM minimum (8GB recommended for large batches)
- Playwright (auto-installed with
playwright install chromium)
- β Windows 11 + Python 3.11
- β Windows 10 + Python 3.10
- β Works with/without proxies
google-maps-scraper/
βββ π orchestrator/ # Python scraping engine
β βββ gmaps_robust_scraper.py # Main scraper (Playwright)
β βββ email_finder.py # Email extraction
β βββ csv_writer.py # CSV export
β βββ proxy_scraper.py # 7000+ proxy fetcher
β βββ models.py # Data models
β βββ main.py # CLI entry
βββ π agents/ # Go agents (optional)
β βββ scraper.go
β βββ proxy.go
βββ π output/ # Generated CSV files
βββ π₯οΈ gui.py # Modern GUI app
βββ π requirements.txt # Dependencies
βββ βΆοΈ run_gui.bat # GUI launcher
βββ βΆοΈ run.bat # CLI launcher
βββ π README.md # This file
Beautiful CustomTkinter interface with:
| Feature | Description |
|---|---|
| π Smart Search | Auto-suggest locations, query validation |
| π Live Dashboard | Results count, progress bar, elapsed time |
| π Activity Log | Color-coded real-time logging |
| βοΈ Settings Panel | Workers, timeouts, max results |
| π Proxy Manager | Auto-fetch or load custom proxies |
| β―οΈ Controls | Start, stop, clear with one click |
| π Dark Theme | Professional modern UI |
| πΎ Auto-Save | CSV export with timestamps |
| Metric | Value |
|---|---|
| Results/Search | 100-120 businesses |
| Scrape Speed | 30-50 businesses/minute |
| Proxy Pool | 7000+ auto-rotated |
| Success Rate | 95%+ with proxies |
| Memory Usage | ~200MB |
- Use proxies
--fetch-proxiesfor best results - Increase workers
--workers 100for faster scraping - Use CLI mode for batch processing
- Run multiple instances for parallel searches
This tool is for educational and legitimate business research purposes only.
By using this software, you agree to:
- β Respect Google Terms of Service
- β Comply with local data laws (GDPR, CCPA, etc.)
- β Only scrape publicly available data
- β Use scraped data ethically
- β Not use for spam or harassment
The authors are not responsible for misuse of this tool.
This project is licensed under the MIT License - see LICENSE file for details.
MIT License
Copyright (c) 2024 Google Maps Scraper Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions...
Contributions are welcome! Here's how:
- Fork the repository
- Create branch
git checkout -b feature/amazing-feature - Commit
git commit -m 'Add amazing feature' - Push
git push origin feature/amazing-feature - Open Pull Request
- Linux/Mac support
- JSON/Excel export
- Search history
- Duplicate detection
- Email verification
- API mode
- Playwright - Browser automation
- CustomTkinter - Modern GUI
- gosom/google-maps-scraper - Inspiration
Made with β€οΈ for the open source community
If this tool helped you, please β Star this repository!
Any Issues Email: mtaimoormalik99@gmail.com