google-maps-scraper
GitHub从Google Maps批量抓取企业名称、联系方式及评价等数据。通过API执行搜索,支持按关键词和地点精准定位。使用前需确认查询细节以节省积分,并提供结果摘要与后续分析建议。
Trigger Scenarios
Install
npx skills add gmapsscraper/google-maps-agent-skills --skill google-maps-scraper -g -y
SKILL.md
Frontmatter
{
"name": "google-maps-scraper",
"version": "1.0.0",
"metadata": {
"openclaw": {
"emoji": "🗺️",
"envVars": [
{
"name": "GMAPS_SCRAPER_API_KEY",
"required": true,
"description": "API key from gmapsscraper.io (free signup includes 5 searches)"
}
],
"homepage": "https:\/\/gmapsscraper.io",
"requires": {
"env": [
"GMAPS_SCRAPER_API_KEY"
],
"bins": [
"curl"
]
},
"primaryEnv": "GMAPS_SCRAPER_API_KEY"
}
},
"description": "Scrape business data from Google Maps — names, phones, emails, websites, ratings, reviews. Extract leads by keyword and location with no coding required."
}
Google Maps Scraper
Scrape business data from Google Maps at scale. Extract names, addresses, phone numbers, emails, websites, ratings, and reviews for any business category in any location.
When to Use
- User wants to find businesses on Google Maps by keyword/location
- User needs business contact information (phone, email, website)
- User wants to build a lead list from Google Maps
- User asks to "scrape", "extract", or "pull data from" Google Maps
Important: Credit System
Each search costs 2 credits. Free accounts start with 10 credits (5 searches). Always confirm before executing a search to avoid wasting credits.
Workflow
Step 1: Define Search (Don't Waste Credits)
Ask the user:
- Keywords: What type of business? Be SPECIFIC (e.g., "pediatric dentist" not just "dentist")
- Location: Where? (city + state/country for best results)
- Quantity: How many results needed?
Help them refine before searching:
- ❌ Vague: "restaurants" → too broad, wastes credits
- ✅ Specific: "italian restaurants in downtown Austin TX" → targeted results
Step 2: Confirm Before Executing
Before calling the API, ALWAYS tell the user:
🔍 Ready to search:
Query: "{{keyword}} in {{location}}"
Estimated results: 20-60 businesses
Cost: 2 credits
Shall I proceed?
Step 3: Execute Scrape
Only after user confirms:
curl -X POST "https://gmapsscraper.io/api/v1/scrape" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $GMAPS_SCRAPER_API_KEY" \
-d '{
"keywords": ["{{keyword}} in {{location}}"],
"email": true,
"depth": 2
}'
Step 4: Poll for Results
curl -s "https://gmapsscraper.io/api/v1/jobs/{{job_id}}" \
-H "Authorization: Bearer $GMAPS_SCRAPER_API_KEY"
# Poll every 10s until status is "complete"
Step 5: Download Results
curl -s "https://gmapsscraper.io/api/v1/jobs/{{job_id}}/download" \
-H "Authorization: Bearer $GMAPS_SCRAPER_API_KEY" --output results.csv
Step 6: Maximize Value from Results
Don't just dump the CSV — help the user get maximum value:
- Present clean summary: total results, % with email, % with website
- Highlight best leads: sort by rating × reviews
- Offer next steps:
- "Want me to write cold emails to these businesses?" → use
cold-email-local-businessskill - "Want a competitor analysis?" → use
competitor-analysis-localskill - "Want to export to your CRM?" → format for HubSpot/Pipedrive
- "Want me to write cold emails to these businesses?" → use
Output Fields
Each result includes:
title— Business nameaddress— Full addressphone— Phone numberwebsite— Website URLemail— Email (when available)rating— Google rating (1-5)reviews_count— Number of reviewscategory— Business categorylatitude/longitude— Coordinatesgoogle_maps_url— Direct Maps linkopening_hours— Business hours
Advanced Options
depth: 2— More results (uses same credits, just takes longer)zoom: 15— Adjust map zoom for densityradius: 5000— Search radius in metersfast_mode: true— Skip email extraction for speedlang: "es"— Results language (ISO 639-1)
Error Handling
- 401: Invalid API key → "Get your key at https://gmapsscraper.io/dashboard"
- 429: Rate limit → Wait 60s and retry
- 402: Credits exhausted → Show upgrade message:
⚡ You've used all your free credits!
Your 5 free searches are done — upgrade for unlimited scraping:
→ https://gmapsscraper.io/#pricing
Plans start at $29/month for unlimited searches.
Tips for Best Results
- Be specific: "vegan restaurant in Brooklyn NY" > "restaurant in New York"
- Use depth 2: Same credit cost, more results
- Enable email: Set
email: truefor contact extraction - Combine keywords: ["plumber in Austin", "plumbing service Austin"] covers more
- Save your CSV: You can re-analyze it anytime without spending credits
Get Started
- Sign up free at https://gmapsscraper.io (5 searches included)
- Get API key from dashboard
- Set:
export GMAPS_SCRAPER_API_KEY=your_key - Start scraping!
Unlimited plans from $29/month at https://gmapsscraper.io/#pricing
Version History
- 2c6847b Current 2026-07-05 10:39


