paddleocr
Reads text from scanned pages, photos and PDFs and returns it as structured Markdown or JSON, so you can pull tables, formulas and headers out of a document without retyping them. Covers many languages and works as input for AI tools.
Extracts business leads, contact details, reviews, ratings and coordinates from Google Maps for lead generation and local market research. Describes a skill that runs the open-source google-maps-scraper tool.
Claude Code
$ npx -y skills add gosom/google-maps-scraper --agent claude-code
Codex
$ npx skills add gosom/google-maps-scraper -a codex
Cursor
$ npx skills add gosom/google-maps-scraper -a cursor
Gemini CLI
$ npx skills add gosom/google-maps-scraper -a gemini-cli
GitHub Copilot
$ npx skills add gosom/google-maps-scraper -a github-copilot
OpenCode
$ npx skills add gosom/google-maps-scraper -a opencode
Windsurf
$ npx skills add gosom/google-maps-scraper -a windsurf

Extract Google Maps business leads, emails, reviews, phone numbers, websites, ratings, coordinates, and more with a free open-source CLI, Web UI, REST API, and optional self-hosted platform.
Use it for lead generation, local business research, sales prospecting, data enrichment, or developer automation.
The easiest way to use Google Maps Scraper is with an AI coding agent such as Claude Code, Codex, Cursor, GitHub Copilot, or any Agent Skills-compatible tool. You describe the leads you want; the agent plans the searches, runs a small validation, starts the full local scrape, monitors it, and helps you work with the results.
Install the skill:
npx skills add gosom/google-maps-scraper
Then ask your agent in plain language:
Find dentists in Berlin and include their websites and email addresses.
The agent automatically checks for the latest skill and Docker image, then asks only for details it still needs. For larger crawls, you can provide your own proxy, continue without one, or review three randomly selected proxy sponsors. Proxy credentials are entered through a masked local terminal prompt and are never pasted into the agent chat.
Requires Docker and Node.js on macOS, Linux, or Windows through WSL. See how the agent workflow works.
| Goal | Start here |
|---|---|
| Get leads into CSV/JSON | Command Line |
| Ask an AI coding agent to run a scrape | AI Agent Skill |
| Run a browser UI locally | Web UI |
| Automate scraping from your app | REST API |
| Run a multi-user scraping platform | SaaS Edition |
| Follow common workflows | Recipes |
If this project is useful to you, a GitHub star helps others discover it. Sponsorships help fund maintenance and new work.
These sponsors help support development and maintenance of Google Maps Scraper.
Coreclaw
Evomi
G Maps Extractor
HasData
NodeMaven
RapidProxy
Scrap.io
SearchApi
SerpApi
TalorData
Webshare
View all sponsors and offers · Become a sponsor
| Completely Free & Open Source | MIT licensed, no hidden costs or usage limits |
| Multiple Interfaces | CLI, Web UI, REST API - use what fits your workflow |
| High Performance | ~120 places/minute with optimized concurrency |
| 33+ Data Points | Business details, reviews, emails, coordinates, and more |
| Production Ready | Scale from a single machine to Kubernetes clusters |
| Flexible Output | CSV, JSON, PostgreSQL, S3, or custom plugins |
| Proxy Support | Built-in SOCKS5/HTTP/HTTPS proxy rotation |
mkdir -p gmaps-output
docker run \
-v gmaps-playwright-cache:/opt \
-v "$PWD/example-queries.txt:/queries.txt:ro" \
-v "$PWD/gmaps-output:/out" \
gosom/google-maps-scraper \
-input /queries.txt \
-results /out/results.csv \
-depth 1 \
-exit-on-inactivity 3m
Useful options:
| Need | Flag |
|---|---|
| Extract emails from business websites | -email |
| Write JSON instead of CSV | -json -results /out/results.json |
| Collect extra reviews | -extra-reviews -json -results /out/results.json |
| Resume an interrupted file scrape | -resume -results /out/results.csv |
| Increase concurrency | -c 4, -c 8, or -c 16 |
| Run multiple pages per browser | -pages-per-browser 4 |
| Limit browser processes | -browser-pool-size 2 |
| Use proxies | -proxies "http://user:pass@host:port,socks5://host:port" |
| Read proxies from a credentials file | -proxies-file /path/to/proxies.txt |
-c controls how many scrape jobs run in parallel. Higher concurrency can finish large input files faster, but it also uses more CPU/RAM and can increase blocking or failures, especially without proxies. Start with the default for a first run. For larger jobs on a capable machine, try -c 4, -c 8, or -c 16 and measure the result.
Start the web interface with a single command:
mkdir -p gmapsdata
docker run \
-v "$PWD/gmapsdata:/gmapsdata" \
-p 8080:8080 \
gosom/google-maps-scraper \
-data-folder /gmapsdata
Then open http://localhost:8080 in your browser.
Or download the binary release for your platform.
Note: Results take at least 3 minutes to appear (minimum configured runtime).
macOS Users: Docker command may not work. See MacOS Instructions.
When running the web server, a full REST API is available:
| Endpoint | Method | Description |
|---|---|---|
/api/v1/jobs | POST | Create a new scraping job |
/api/v1/jobs | GET | List all jobs |
/api/v1/jobs/{id} | GET | Get job details |
/api/v1/jobs/{id} | DELETE | Delete a job |
/api/v1/jobs/{id}/download | GET | Download results as CSV |
Full OpenAPI 3.0.3 documentation available at http://localhost:8080/api/docs
Need a multi-user platform with API keys, admin UI, job queue, workers, and cloud provisioning? Use the optional self-hosted SaaS edition:
curl -fsSL https://raw.githubusercontent.com/gosom/google-maps-scraper/main/PROVISION | sh
See SaaS documentation for deployment and operations details. There is also a 5-minute deployment walkthrough and a YouTube video walkthrough.
More examples are available in Recipes. If you need proxies for larger jobs, see Proxy Sponsors.
The AI Agent Skill turns a natural-language lead request into a guided local scraping workflow. It is designed for nontechnical users as well as developers and keeps you in control of the search scope, proxy choice, and output.
If you have not installed it yet:
See 12 google-maps-scraper alternatives
Reads text from scanned pages, photos and PDFs and returns it as structured Markdown or JSON, so you can pull tables, formulas and headers out of a document without retyping them. Covers many languages and works as input for AI tools.
Gives your AI assistant a memory that persists across sessions, so it remembers your preferences and earlier work in this repository instead of starting fresh. Search, forget, pause and resume memories with simple commands.
Gives AI agents a library of ready-made skills for scientific work such as metabolic flux analysis, protein experiment design, time series modeling, and analytical method validation, so research tasks need less hand-built code. It works with any agent that supports the open Agent Skills standard.
Gives Claude Code skills, agents, and commands for PostHog analytics, session replay, feature flags, error tracking, and LLM observability. Includes MCP server setup and project access checks.
Install it with the command on its page. It includes google-maps-scraper. Its skills do not fire on their own yet. Free and open source.
Is this plugin yours?
Claim it with GitHubSubmit a pluginPromote it