π Get 120 Leads in 10 Minutes! π€
Welcome to the Google Maps Scraper, a powerful scraper designed to scrape upto 1200 Google Map Leads in just 1.6 Hours .
If you're looking to grow your business by connecting with potential leads discovered using Google Maps, but want to avoid the hassle of manually gathering leads from each Google Maps by copying and pasting, you've come at the Right Place.
This Google Maps Scraper is well maintained and and saves data in both CSV and JSON formats for easy use.
Below is a sample showing the data that will be generated as CSV and JSON:
If you are not a techy person or don't know how to use git. You can follow this video to make bot run.
Let's get started by generating Google Maps Leads by following these simple steps
1οΈβ£ Clone the Magic π§ββοΈ:
git clone https://github.com/omkarcloud/google-maps-scraper
cd google-maps-scraper
2οΈβ£ Install Dependencies π¦:
python -m pip install -r requirements.txt
3οΈβ£ Let the Rain of Google Map Leads Begin π:
python main.py
Once the scraping process is complete, you can find your leads in the output
directory.
Watch this video to see the bot in action!
β I am seeing error like: βFileNotFoundError: [Errno 2] No such file or directory: 'build/115/chromedriver.exeβ when running βpython main.pyβ
This is a Temporary Bug due which occurs in Chrome 115 due to chromedriver-autoinstaller
dependency. The fix is to:
-
Go to https://googlechromelabs.github.io/chrome-for-testing/#stable and download "chrome driver" based on your chrome version. (Most likely 115)
-
Extract the zip file
-
Place the "chromedriver" file (or "chromedriver.exe" if you are using Windows) directly into the build/ folder. Make sure you're not placing the extracted folder but only the chrome driver file itself.
-
Run
python main.py
and program should run successfully.
A: Open the file src/config.py
and comment out the line that sets the max_results
parameter.
By doing so, you can scrape all the search results from Google Maps. For example, to scrape all restaurants in Delhi, modify the code as follows:
queries = [
{
"keyword": "restaurants in delhi",
# "max_results" : 5,
},
]
β I want to scrape search results for a specific business in a particular location. How can I achieve that?
A: Open the file src/config.py
and update the keyword
with your desired search query.
For example, if you want to scrape data about stupas in Kathmandu π³π΅, modify the code as follows:
queries = [
{
"keyword": "stupas in kathmandu",
},
]
A: You have the option to apply filters to your Google Maps search results using the following parameters:
- min_rating
- min_reviews
- max_reviews
To specify filters, open src/config.py
and specify your filters.
The Following example will scrape only those listings with a minimum of 5 reviews, and a maximum of 100 reviews
queries = [
{
"keyword": "restaurants in delhi",
"min_reviews": 5 ,
"max_reviews": 100,
},
]
A: Absolutely! Open src/config.py
and add as many queries as you like.
For example, if you want to scrape restaurants in both Delhi π and Bangalore π¨βπ», use the following code:
queries = [
{
"keyword": "restaurants in delhi",
},
{
"keyword": "restaurants in bangalore",
}
]
β How to Scrape Additional Information like Website, Phone, Working Hours, Booking Appointment Link, Price Range?
We offer a Pro Version of our Google Maps Scraper that enables you to scrape more data points like working hours, booking appointment links, and price range for the scraped locations. Getting information like Working Hours, Booking Appointment Link and Prices Range greatly assists in Prospecting.
Below is an example of the sample lead scraped by Pro Version:
{
"title": "The GT Road",
"link": "https://www.google.com/maps/place/The+GT+Road/data=!4m7!3m6!1s0x390cfd372e5302e9:0x6794ee3f98499539!8m2!3d28.6331276!4d77.2227344!16s%2Fg%2F11c6q8wqnx!19sChIJ6QJTLjf9DDkROZVJmD_ulGc?authuser=0&hl=en&rclk=1",
"main_category": "Barbecue restaurant",
"rating": 4.3,
"reviews": 9984,
"website": null,
"phone": "097177 20084",
"address": "The GT Road, M-39, Shankar Market, Block M, Connaught Place, New Delhi, Delhi 110001",
"place_id": "ChIJ6QJTLjf9DDkROZVJmD_ulGc",
"status": "Open \u22c5 Closes 3:30\u202fpm \u22c5 Reopens 7\u202fpm",
"price_range": "\u20b9\u20b9",
"description": null,
"reviews_per_rating": {
"1": 385,
"2": 250,
"3": 893,
"4": 2906,
"5": 5550
},
"reviews_link": "https://search.google.com/local/reviews?placeid=ChIJ6QJTLjf9DDkROZVJmD_ulGc&q=The+GT+Road&authuser=0&hl=en&gl=IN",
"thumbnail": "https://lh5.googleusercontent.com/p/AF1QipMc3kD_A5V7Lcons7yB5pcF7yY4BMGyFXfjqZw5=w408-h271-k-no",
"images": [
{
"thumbnail": "https://lh5.googleusercontent.com/p/AF1QipMc3kD_A5V7Lcons7yB5pcF7yY4BMGyFXfjqZw5=w447-h298-k-no",
"title": "All"
},
...
],
"hours": [
{
"day": "Monday",
"times": [
"12\u20133:30\u202fpm",
"7\u202fpm\u201312\u202fam"
]
},
...
],
"menu": {
"link": null,
"source": null
},
"order_online_links": [
{
"link": "https://www.dineout.co.in/delhi/the-gt-road-connaught-place-central-delhi-31393",
"source": "dineout.co.in"
},
{
"link": "https://www.eazydiner.com/delhi-ncr/the-gt-road-connaught-place-cp-central-delhi-643774",
"source": "eazydiner.com"
}
],
"reservations": [
{
"link": "https://www.dineout.co.in/delhi/the-gt-road-connaught-place-central-delhi-31393",
"source": "dineout.co.in"
},
{
"link": "https://www.eazydiner.com/delhi-ncr/the-gt-road-connaught-place-cp-central-delhi-643774",
"source": "eazydiner.com"
}
],
"owner": {
"id": "102128808953878746577",
"link": "https://www.google.com/maps/contrib/102128808953878746577",
"name": "The GT Road (Owner)"
},
"categories": [
"Barbecue restaurant",
"Afghan restaurant",
"Buffet restaurant",
"Mughlai Restaurant",
"North Indian Restaurant",
"Restaurant"
],
"coordinates": {
"latitude": 28.633127599999998,
"longitude": 77.2227344
},
"plus_code": "J6MF+73 New Delhi, Delhi",
"complete_address": {
"borough": "Shankar Market, Block M, Connaught Place",
"city": "New Delhi",
"country_code": "IN",
"postal_code": "110001",
"state": "Delhi",
"street": "M-39"
},
"time_zone": "Asia/Calcutta",
"about": [
{
"id": "service_options",
"name": "Service options",
"options": [
{
"enabled": true,
"name": "Kerbside pickup"
},
{
"enabled": true,
"name": "No-contact delivery"
},
{
"enabled": true,
"name": "Delivery"
},
{
"enabled": true,
"name": "Takeaway"
},
{
"enabled": true,
"name": "Dine-in"
}
]
},
...
],
"user_reviews": [
{
"description": "This is the best place to have buffet with reasonable price. Amazing varieties in both veg and non-veg. Starting with grilled barbeque delicacies with some good main course. The desserts have amazing varieties as well. The staff is very courteous and ambience is good as well. Been there 4-5 times and never got disappointed. Must go place in Delhi for having buffet.",
"images": [
"https://lh5.googleusercontent.com/p/AF1QipP6VVoRDN4zkUQoO83f2g8_UR3xJBvUpIhsWyH1=w150-h150-k-no-p",
"https://lh5.googleusercontent.com/p/AF1QipPCLpnyV69Z7msHAbVR5CfFBoRN1WWsLW56RxHr=w150-h150-k-no-p",
"https://lh5.googleusercontent.com/p/AF1QipPb-4l2XVkr9PMPeKIuGQXjSJl_5LLm4qaUBStA=w150-h150-k-no-p",
"https://lh5.googleusercontent.com/p/AF1QipPBVNpaLDM9pbG5MxHE33Kw8b_i-JQ13tm4jc7_=w150-h150-k-no-p",
"https://lh5.googleusercontent.com/p/AF1QipPwV_xGCzTFQqFj3lCay_lobbUgTpoVDGP29D8a=w150-h150-k-no-p",
"https://lh5.googleusercontent.com/p/AF1QipP-L2M9nPtfjBwZEcLQs-bmWt8x2KpSX9sEYLjC=w150-h150-k-no-p",
"https://lh5.googleusercontent.com/p/AF1QipPIZWv_JB4VQ6ohArUovoYdmeRrlfFMZRx4x01p=w150-h150-k-no-p"
],
"name": "mitul srivastava",
"profile_picture": "https://lh3.googleusercontent.com/a-/AD_cMMReBC-mV4eJX3vlAaBsIhonvET4UzDCxReaiuRQL2AGSa8=s120-c-rp-mo-ba3-br100",
"rating": 5,
"when": "a month ago"
},
...
],
"cid": "7463852439365063993",
"data_id": "0x390cfd372e5302e9:0x6794ee3f98499539"
}
Moreover, the Pro Version is 3 times faster than the Free Version.
Follow these simple steps:
-
Send Email to chetan@omkar.cloud with following template. Replace YOUR_GITHUB_USERNAME with your github username.
Subject: Request Scraper
Content: I have starred the repository as YOUR_GITHUB_USERNAME. Kindly send the scraper.
- The Pro Scraper will be delivered to you within 24 hours and you can start scraping google map leads.
On average, each Google Maps search gives 120 listings. It takes approximately 10 minutes to scrape these 120 listings.
To calculate the number of hours it takes to scrape "n" searches, you can google search this formula substituting n
with number of searches you want to conduct:
n * 10 minutes in hour
For example, if you want to scrape 10 google map queries or 1200 listings, it will take around 1.6 hours.
A: Most people scrape Google Maps Listings to sell things!
For example, you can search for restaurants in Amritsar and pitch your web development services to them.
You can also find real estate listings in Delhi and promote your exceptional real estate software.
Google Maps is seriously a great platform to find B2B customers to sell things to!