gmapsleadfinder / google-maps-scraper
Google Maps Scraper / Extractor / Lead Scraper SDK for the GMaps Lead Finder Agent HTTP API
Package info
github.com/google-maps-lead-scraper/google-maps-scraper-php
pkg:composer/gmapsleadfinder/google-maps-scraper
Requires
- php: ^8.1
- ext-curl: *
- ext-json: *
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is not auto-updated.
Last update: 2026-09-16 14:42:06 UTC
README
Google Maps Extractor · Google Maps Lead Scraper · Google Maps Lead Extractor
PHP SDK to scrape Google Maps places and export leads (name, phone, website, emails, and more) through a hosted Agent HTTP API. Powered by GMaps Lead Finder. This is not a local browser crawler — jobs run in the cloud scrape-and-enrich pipeline.
- Packagist:
gmapsleadfinder/google-maps-scraper - GitHub: https://github.com/google-maps-lead-scraper/google-maps-scraper-php
- CLI:
gmaps-scraper
Get an API key
- Sign in at gmapsleadfinder.com.
- Use a plan with Agent API (Growth or higher) — see Pricing.
- Open Account → API key and copy your
gmf_…key.
export GMF_API_KEY=gmf_your_key_here
Install
composer require gmapsleadfinder/google-maps-scraper
Requires PHP 8.1+ with ext-curl and ext-json.
Quickstart
<?php use GmapsLeadFinder\GoogleMapsScraper\Client; $client = new Client(); // reads GMF_API_KEY $me = $client->me(); echo $me['plan'], ' ', $me['creditsRemaining'], "\n"; $rows = $client->scrape('dentists in Austin TX'); echo count($rows), "\n";
CLI (after Composer install):
vendor/bin/gmaps-scraper me
vendor/bin/gmaps-scraper scrape "dentists in Austin TX" --out leads.json
From this repo:
composer install php examples/quickstart.php php bin/gmaps-scraper me
Client API
| Method | Description |
|---|---|
new Client($options) |
From env / apiKey / baseUrl / timeoutMs |
me() |
Plan & credits |
createJob($keyword) |
Queue one-keyword job |
getJob($jobId) |
Poll status |
getResults($jobId, $options) |
Paginated rows (limit, cursor) |
scrape($keyword, $options) |
Create → poll → all rows |
scrape options: pollIntervalMs (default 2000), timeoutMs (default 600000), resultLimit (default 100).
Errors
Exceptions under GmapsLeadFinder\GoogleMapsScraper\Exceptions\:
| HTTP | Class |
|---|---|
| 400 | BadRequestException |
| 401 | AuthenticationException |
| 402 | InsufficientCreditsException |
| 403 | PlanNotAllowedException |
| 404 | NotFoundException |
| 409 | JobConflictException |
| — | TimeoutException, ApiException |
Limits
- Exactly one keyword per API job
- One running job per user (
409if busy) - 1 credit = 1 place row; Growth+ required
Publish to Packagist
git tag v0.1.1 git push origin main --tags
Then submit https://github.com/google-maps-lead-scraper/google-maps-scraper-php at packagist.org.
Links
| Resource | URL |
|---|---|
| Website | https://gmapsleadfinder.com |
| HTTP API | https://gmapsleadfinder.com/docs/api |
| Packagist | https://packagist.org/packages/gmapsleadfinder/google-maps-scraper |
| Multi-language kit | https://github.com/google-maps-lead-scraper/google-maps-scraper |
License
MIT
