Why hotels or any other businesses on Google Maps?Every single hotel is benefiting from placing its business on Google Maps as there are millions of potential clients. A significant part of hotels data comes from owners or managers of the hotels. Another part is being shipped by enthusiastic customers. This makes Google Places the best source of truth for hotels and other categories (restaurants, bars, shopping malls, etc.).
Ok, Google does have it, but how can I get the data?The first thing that comes to the minds of those who know what is scraping is to scrape it. Google Map scraping, harvesting, or extracting is a process of getting all the information about places (name, address, coordinates, site, phone, working hours, etc.) from the Google Maps site. It automates manual exporting of the data and saves a lot of time for marketing teams.
4 ways to scrape Google places?There are several ways to get the data into a CSV/excel file:
- write your own script;
- use official Google Places API;
- hire a frellancer;
- use existing scrapers, like Google Maps scraper.
Using the official Google Places API will be a good option but might be costly for small teams. Moreover, the fields are limited, but fortunately, you still can get some main data like names, coordinates, addresses, etc.
Hiring a freelancer might work well, although you will need to keep the relation with him/her. Make sure the freelancer will not disappear once Google updated its protection and you need to fix the program.
Using an existing cloud scraper like Google Maps scraper will be the ultimate option, as it will not require any developer's skills and the prices much lower than using the Official API. You can get the results into a CSV/excel file. The results contain a variety of fields, including phone numbers, emails, social links, etc.
The challenge of scraping the hotels from the entire countryIf you open a query like "hotels near NYC, NY, USA" you will see only about 400 places for your search. Because Google Maps limits the amount of the results to one query search, you don't see all the hotels (unless it's a city with less than 400 hotels in it).
Therefore, the challenge of getting all the results from a country is to create a list of queries that will search for specific places in some limited areas.
What queries do you need to scrape USA hotels?The solution will be a combination of different categories (Hotel, Family Hotel, Luxury Hotel, etc.) along with locations splitted into small areas (neighborhoods, counties, etc.), for example:
- Hotels, Bessemer, Alabama, United States
- Hotels, Daphne, Alabama, United States
- Family Hote, Bessemer, Alabama, United States
- Family Hote, Daphne, Alabama, United States
- Hotels, 04781, CA, US
- Hotels, 04783, CA, US
- Hotels, 04785, CA, US
- Hotels, 04786, CA, US
CategoriesYou can use a few most common categories for hotels: Hotel, Wellness Hotel, Business Hotel, and Budget Hotel. The entire list of all the categories from Google Places can be found here. In this example, we are using Google Maps scraper, so we don't need to combine the categories with locations now. Moreover, as we are going to use postal codes, it will be enough to use only one main category "hotel":
LocationsThe ideal location will be a postal code with city and country names. Using small cities or neighborhoods also will work great. If you are using Outscraper, there is no need to find postal codes or a list of cities. Just select the required regions from the dropdown. You also can use this file to get all the locations and use it inside any other app:
To specify the locations manually, use the "custom locations" checkbox and insert the data from any table you have. Make sure you have a country name inside each location. This will help the scraper to find the places regardless of the IP address it's using:
Advanced parametersWhile using Google Maps scraper it's possible to select a language, total places limit, and whether to extract additional data from places' websites or not. Don't forget to select the region to eliminate any other countries that might appear from cities with ambiguous names.
You also might want to use "Drop duplicates" so you will ignore duplicate items inside a single task (the same places from different queries):
Starting the scraping taskOnce everything looks right, click on the "Scrape data" button and validate a few queries by opening them on Google Maps. Make sure the queries work on Google Maps and you see the places.
If you are running the first extraction, it will ask you to verify the account. Follow instructions on the pop-up page and click "I've performed the actions" once you verified the account. When your task is started you can open the tasks page to monitor the progress:
ResultsOnce your task is finished, you will receive an email with a link to the data. The file will be available for 30 days to download. You also can download the results from the tasks page. The results file contains the following fields:
Video tutorial on how to scrape Google Maps using Outscraper cloud application
Need more?SIGN UP NOW and use the promotion code: OUTSCRAPER1 to get a 10% OFF discount.
Scraper app ► https://app.outscraper.com/googleMaps Google Maps scraper page ► https://outscraper.com/google-maps-scraper Google Maps reviews scraper page ► https://outscraper.com/google-maps-reviews-scraper Google Maps Places real time API ► https://outscraper.com/google-maps-api