Python wrapper for SLA's OneMap API
Project description
Python Wrapper for SLA's OneMap API
Introduction
This package provides a simple way to query data using the OneMap API in Python.
OneMap arranges its API endpoints by groups, and this package is organized to reflect that grouping.
onemap-py allows you to make queries corresponding to the OneMap API, and returns the results to you in a standard
python dict
.
Sample Usage
import onemap_py
x = onemap_py.Client("email@hostname.com", "password")
# Search for an address
# Note: For address search, no authentication required
gh = x.search("GRAND HYATT")
gh = gh['results'][0] # Take the first result
# For other queries, need to authenticate
x.authenticate() # if email and password were None, interactive prompt
# Get planning area for Grand Hyatt
planning_area = x.PlanningAreas.find_planning_area(gh['LATITUDE'], gh['LONGITUDE'])
planning_area = planning_area['pln_area_n'] # Get the name
# Get some population-related information for the planning area
avail_data = x.Population.available_data_types # find all available data types supported by the OneMap API
x.Population.get_population_data("age", year = 2018, planning_area=planning_area)
# Get route from Grand Hyatt to, say, Changi Airport Terminal 3
x.Router.supported_route_types # ['walk', 'drive', 'cycle', 'pt']
changi_airport = x.search("CHANGI AIRPORT TERMINAL 3")['results'][0]
x.Router.route_from_postal(gh['POSTAL'], changi_airport['POSTAL'], route_type='drive')
Details
Client:
Main class that encapsulates all classes defined in other modules.
Client
itself is a subclass ofOneMap
, but also has attributesRouter
,PlanningAreas
,Population
, andThemes
.
base.OneMap
Provides basic functionality such as address search, coordinate conversion, and authentication.
routing.Router
Provides functionality to query routes between 2 points. Currently supports
(lat,lng)->(lat,lng)
orpostal->postal
planning_areas.PlanningAreas
Provides functionality to retrieve planning areas, including geospatial boundaries.
population.Population
Handles all population-related queries, including education level, economic status, work income, marital status etc. Use
Population.available_data_types
to see available data typesFor a full list of data provided by OneMap, you can refer to their documentation.
themes.Themes
Thematic information from various agencies in Singapore.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for onemap_py-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e73d2a98de1d75b0aeb52cf828318b77b4d2ef4768bd55acb757ecb2710bee4c |
|
MD5 | 69f4bb6030219df4bd0fa13c883a1237 |
|
BLAKE2b-256 | 37eebe0d073569681882a4c02fc12307eb66f688bca080d20585737382038dfe |