{"id":34814852,"url":"https://github.com/serpapi/google-maps-scraper","last_synced_at":"2026-04-01T20:29:44.344Z","repository":{"id":321183466,"uuid":"1084814417","full_name":"serpapi/google-maps-scraper","owner":"serpapi","description":"Google Maps Scraper tool to scrape maps results with simple API. Get place information like gps coordinate, reviews, rating, type, operating hours, and more","archived":false,"fork":false,"pushed_at":"2025-10-29T07:57:25.000Z","size":23,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-12-26T21:58:40.805Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/serpapi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-28T07:41:19.000Z","updated_at":"2025-11-26T15:34:12.000Z","dependencies_parsed_at":"2025-10-28T10:05:26.464Z","dependency_job_id":"e12bf951-bd33-48ff-b8e9-53745a00a64e","html_url":"https://github.com/serpapi/google-maps-scraper","commit_stats":null,"previous_names":["serpapi/google-maps-scraper"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/serpapi/google-maps-scraper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2Fgoogle-maps-scraper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2Fgoogle-maps-scraper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2Fgoogle-maps-scraper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2Fgoogle-maps-scraper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/serpapi","download_url":"https://codeload.github.com/serpapi/google-maps-scraper/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2Fgoogle-maps-scraper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31291641,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-12-25T13:02:51.570Z","updated_at":"2026-04-01T20:29:44.336Z","avatar_url":"https://github.com/serpapi.png","language":null,"readme":"# Google Maps Scraper\n\n[\u003cimg width=\"950\" height=\"300\" alt=\"Google Maps scraper tool\" src=\"https://github.com/user-attachments/assets/2f1d195b-0fe8-4e18-a3fa-89bcf7f7c956\" /\u003e](https://serpapi.com/google-maps-api?utm_source=github_google_maps_scraper)\n\nGoogle Maps Scraper - A tool to scrape map results with a simple API. Get place information like GPS coordinates, reviews, rating, type, operating hours, and more.\n\nWe provide the results in a structured JSON format, eliminating the need for parsing, coding, proxies, or any other web scraping headaches for developers.\n\nHere is the response example:\n\u003cimg width=\"1209\" height=\"457\" alt=\"scrape Google Maps\" src=\"https://github.com/user-attachments/assets/a0dcb87b-6bbb-47ec-bdb0-c902036e180f\" /\u003e\n\n## How to scrape Google Maps?\n\nUsing a simple GET request, you can retrieve Google Maps search results:\n\n```\nhttps://serpapi.com/search.json?engine=google_maps\u0026q=Coffee\u0026ll=@40.7455096,-74.0083012,14z\u0026api_key=YOUR_API_KEY\n```\n\n- Register for free at [SerpApi to get your API Key](https://serpapi.com/google-maps-api?utm_source=github_google_maps_scraper)\n- `q` parameter:  defines the query you want to search.\n- `ll` parameter: defines the GPS coordinates of the location where you want the search to originate from. Its value must match the following format:\n`@ + latitude + , + longitude + , + zoom/map_height`\n\nThe zoom attribute ranges from 3z, map completely zoomed out - to 21z, map completely zoomed in. Alternatively, you can specify map_height in meters (e.g., 10410m).\n\n## Code examples\nHere are some code examples based on your favorite programming languages.\n\n### cURL Integration\n\n``` bash\ncurl --get https://serpapi.com/search \\\n -d engine=\"google_maps\" \\\n -d q=\"Coffee\" \\\n -d ll=\"@40.7455096,-74.0083012,14z\" \\\n -d api_key=\"secret_api_key\"\n```\n\n### Python Integration\n\nPreparation for accessing the SerpApi API in Python\n\nStep 1:  \nCreate a new `main.py` file. (You can name it whatever you want)\n\nStep 2:  \nInstall [requests package](https://pypi.org/project/requests/) with:\n```\npip install requests\n```\n\nStep 3:  \nAdd this code to your file:\n``` py\nimport requests\nSERPAPI_API_KEY = \"YOUR_SERPAPI_API_KEY\"\n\nparams = {\n    \"api_key\": SERPAPI_API_KEY, \n    \"engine\": \"google_maps\",\n    \"q\": \"coffee\",\n    \"ll\": \"@40.7455096,-74.0083012,14z\"\n}\n\nsearch = requests.get(\"https://serpapi.com/search\", params=params)\nresponse = search.json()\nprint(response)\n```\n\nIf you're only interested in the `local_results`, you can print them from the response directly. It's an array of places:\n\n``` py\nprint(response[\"local_results\"])\n```\n\n\u003e Warning: Sometimes, this API returns `place_results` instead of `local_results` if Google Maps returns a specific place\n\n\n### JavaScript Integration\n\nStep 1:  \nInstall the [SerpApi JavaScript package](https://github.com/serpapi/serpapi-javascript):\n```\nnpm install serpapi\n```\n\nStep 2:  \nCreate a new `index.js` file. (You can name it whatever you want)\n\nStep 3:  \nAdd this to your file for basic search:\n``` js\nconst { getJson } = require(\"serpapi\");\ngetJson({\n  api_key: API_KEY, // Put your API Key\n  engine: \"google_maps\",\n  q: \"coffee\",\n  ll: \"@40.7455096,-74.0083012,14z\"\n}, (json) =\u003e {\n  console.log(json[\"local_results\"]);\n});\n```\n\nWe're printing the `local_results` from Google Maps in this case.\n\n### Other Programming Languages\nWhile you can use our APIs using a simple GET request with any programming language, you can also see our ready-to-use libraries here: [SerpApi Integrations](https://serpapi.com/integrations?utm_source=github_google_maps_scraper).\n\n## Google Maps Scraper Parameter\nPlease find the parameters for the Google Maps Search API below:\n\n| Name          | Description                                                                                                                                                                                                                | Requirement |\n|---------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------|\n| q             | Parameter defines the query you want to search                                                                                                                                                                             | Required    |\n| ll            | Parameter defines the GPS coordinates of the location where you want the search to originate from. Its value must match the following format: @ + latitude + , + longitude + , + zoom/map_height                           | Required    |\n| Localization  |                                                                                                                                                                                                                            |             |\n| google_domain | Parameter defines the Google domain to use. It defaults to google.com                                                                                                                                                      | Optional    |\n| hl            | Parameter defines the language to use for the Google Maps search. It's a two-letter language code. (e.g.,en for English, es for Spanish, or fr for French).                                                                | Optional    |\n| gl            | Parameter defines the country to use for the Google Maps search. It's a two-letter country code. (e.g.,us for the United States, uk for United Kingdom, or fr for France).                                                 | Optional    |\n| Pagination    |                                                                                                                                                                                                                            |             |\n| start         | Parameter defines the result offset. It skips the given number of results. It's used for pagination. (e.g., 0 (default) is the first page of results, 20 is the 2nd page of results, 40 is the 3rd page of results, etc.). | Optional    |\n\nIf you're searching for a specific place, you can use one of these parameters: `data`, `place_id`, or `data_cid`. Visit [our documentation](https://serpapi.com/google-maps-api#api-parameters-advanced-google-maps-parameters) for more information.\n\n\n## Available data on Google Maps (JSON Response)\nGoogle Maps can return different information from time to time, depending on what information is available on their side. Here is what the `local_results` array may contain:\n\n``` json\n \"local_results\": [\n    {\n      \"position\": \"Integer - Position of the local result on the page\",\n      \"title\": \"String - Title of the local result\",\n      \"place_id\": \"String - Place ID of the local result\",\n      \"data_id\": \"String - Data ID of the local result\",\n      \"data_cid\": \"String - Data CID of the local result (also known as `ludocid` in Google Local API)\",\n      \"reviews_link\": \"String - URL to the reviews of the local result\",\n      \"photos_link\": \"String - URL to the photos of the local result\",\n      \"gps_coordinates\": {\n        \"latitude\": \"Float - Latitude of the local result\",\n        \"longitude\": \"Float - Longitude of the local result\"\n      },\n      \"place_id_search\": \"String - URL to the SerpApi place search of the local result\",\n      \"provider_id\": \"String - Provider ID of the place\",\n      \"rating\": \"Float - Rating of the local result\",\n      \"reviews\": \"Integer - Number of reviews of the local result\",\n      \"price\": \"String - Price of the local result. e.g. $, $$, $$$, etc\",\n      \"type\": \"String - Type of the local result\",\n      \"types\": \"Array - Types of the local result\",\n      \"type_id\": \"String - Type ID of the local result\",\n      \"type_ids\": \"Array - Type IDs of the local result\",\n      \"address\": \"String - Address of the local result\",\n      \"open_state\": \"String - Open state of the local result\",\n      \"hours\": \"String - Open/Close hours of the local result\",\n      \"operating_hours\": {\n        \"day as key\": \"String - Open/Close hours of the local result\"\n      },\n      \"phone\": \"String - Phone number of the local result\",\n      \"website\": \"String - Website of the local result\",\n      \"amenities\": \"Array - Amenities of the local result\",\n      \"description\": \"String - Description of the local result\",\n      \"service_options\": \"Hash - Service options of the local result\",\n      \"thumbnail\": \"String - Thumbnail of the local result\",\n      \"extensions\": [\n        {\n          \"\u003cextension_type\u003e\": \"Array of strings - List of supported extensions\"\n        },\n        ...\n      ],\n      \"unsupported_extensions\": [\n        {\n          \"\u003cextension_type\u003e\": \"Array of strings - List of unsupported extensions\"\n        },\n        ...\n      ],\n    }\n  ],\n```\n\n## Use cases\nHere are some use cases, but not limited to, for the Google Maps API:\n\n- Generate geo-targeted lead lists by scraping nearby businesses (name, phone, website, rating) for any keyword and location.\n- Monitor competitors by tracking ratings, review counts, and price levels across multiple areas on a schedule.\n- Enrich your CRM by resolving a place to structured details (hours, categories, coordinates) via place IDs.\n- Analyze customer sentiment by pulling recent Google Maps reviews (text, stars, timestamps) for selected places.\n- Build location pickers and store locators by querying places around a lat/lng or grid and plotting the structured results.\n\n## Blog tutorial \n- [Scrape Google Maps data and reviews using Python](https://serpapi.com/blog/scrape-google-maps-data-and-reviews-using-python/)\n- [No-Code Google Maps Scraper options](https://serpapi.com/blog/no-code-google-maps-scraper-options-2/)\n\nInteresting use cases:\n- [How AI Can Predict the Success of Your Business Using Data from Google Maps](https://serpapi.com/blog/how-ai-can-predict-the-success-of-your-business-using-data-from-google-maps/)\n- [How To Make a Travel Guide Using SERP data and Python](https://serpapi.com/blog/how-to-make-a-travel-guide-using-serp-data-and-python/)\n- [Gauge Business Popularity using Google Maps](https://serpapi.com/blog/gauge-business-popularities-using-google-maps/)\n\n## Video tutorial\n- [Scrape Google Maps reviews data using Python](https://www.youtube.com/watch?v=naigldB0nTY)\n- [Scrape unlimited leads in one click (Collect data from Google Maps)](https://www.youtube.com/watch?v=20IidkHRqDA)\n\n## Contacts\nFeel free to reach out via `contact@serpapi.com`.\n\nCheck other [Google Scraper](https://github.com/serpapi/google-scraper) from SerpApi.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fserpapi%2Fgoogle-maps-scraper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fserpapi%2Fgoogle-maps-scraper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fserpapi%2Fgoogle-maps-scraper/lists"}