Python | Fetch Nearest Hospital locations using GoogleMaps API

If you are ever curious about how you can fetch nearest places (restaurant, hospital, labs, cafe’s, etc) location using your current location, this could be achieved using Python and Google Maps API. In this article, we will use Google Maps API to find the nearest hospital’s locations using Python.

The API Key can be generated using the google developers console. Then you should follow the steps there to make an API Key.

Implementation:



  • Install the required python libraries before running the code: googleplaces, requests
  • Create an google Maps API Key going to this link.
  • Initialise Google Places constructor as: google_places = GooglePlaces(API_KEY)
  • Call this function google_places.nearby_search with parameters as latitude, longitude, raduis and type:{hospital, casino, bar, cafe, etc} and store the output in a variable. User can give his own latitude and longitude in the parameters.
  • The search results will be of class type: ‘googleplaces.Place’.
  • The attributes value can be printed like longitude, latitude, name

Below is the implementation code :

filter_none

edit
close

play_arrow

link
brightness_4
code

# Importing required libraries
from googleplaces import GooglePlaces, types, lang
import requests
import json
  
# This is the way to make api requests
# using python requests library
  
# r = requests.get(send_url)
# j = json.loads(r.text)
# print(j)
# lat = j['latitude']
# lon = j['longitude']
  
# Generate an API key by going to this location
# https://cloud.google.com /maps-platform/places/?apis =
# places in the google developers
  
# Use your own API key for making api request calls
API_KEY = 'Your_API_Key'
  
# Initialising the GooglePlaces constructor
google_places = GooglePlaces(API_KEY)
  
# call the function nearby search with
# the parameters as longitude, latitude,
# radius and type of place which needs to be searched of 
# type can be HOSPITAL, CAFE, BAR, CASINO, etc
query_result = google_places.nearby_search(
        # lat_lng ={'lat': 46.1667, 'lng': -1.15},
        lat_lng ={'lat': 28.4089, 'lng': 77.3178},
        radius = 5000,
        # types =[types.TYPE_HOSPITAL] or
        # [types.TYPE_CAFE] or [type.TYPE_BAR]
        # or [type.TYPE_CASINO])
        types =[types.TYPE_HOSPITAL])
  
# If any attributions related 
# with search results print them
if query_result.has_attributions:
    print (query_result.html_attributions)
  
  
# Iterate over the search results
for place in query_result.places:
    # print(type(place))
    # place.get_details()
    print (place.name)
    print("Latitude", place.geo_location['lat'])
    print("Longitude", place.geo_location['lng'])
    print()

chevron_right


Output:

Sarvodaya Hospital
Latitude 28.4222361
Longitude 77.3167904

Metro Heart Institute with Multispeciality
Latitude 28.4060327
Longitude 77.31803429999999

Asian Institute of Medical Sciences
Latitude 28.4260095
Longitude 77.29998359999999

Rawat Medical Store
Latitude 28.3928114
Longitude 77.30199

Sparsh Hospital
Latitude 28.4449953
Longitude 77.31859759999999

..more results 


My Personal Notes arrow_drop_up

Competitive Programmer, Full Stack Developer, Technical Content Writer, Machine Learner

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.