带有自动令牌处理的onemap api的python包装客户端

onemapsg的Python项目详细描述


OneMap API客户端

PyPI version

OneMap API的Python包装客户端

img

这里的文档:https://docs.onemap.sg/#static-map

pypi链接:https://pypi.org/project/onemapsg/

在此处注册api密钥:https://developers.onemap.sg/signup/

此客户端:

  • 验证有效的API令牌,并根据需要刷新!
  • 把所有的东西都当作一本好字典!

示例用法

fromonemapsgimportOneMapClientClient=OneMapClient("YOUR_EMAIL","YOUR_PASSWORD")Client.search("Dragon View Park")# Result'''{'found': 1, 'totalNumPages': 1, 'pageNum': 1, 'results': [{'SEARCHVAL': 'DRAGON VIEW PARK',   'BLK_NO': '',   'ROAD_NAME': 'NIL',   'BUILDING': 'DRAGON VIEW PARK',   'ADDRESS': 'DRAGON VIEW PARK SINGAPORE',   'POSTAL': 'NIL',   'X': '27415.382888752',   'Y': '31015.7030415982',   'LATITUDE': '1.29676950856585',   'LONGITUDE': '103.828065538017',   'LONGTITUDE': '103.828065538017'}]}'''

安装

pip install onemapsg

学分

  • OneMap团队提供了非常好的API

  • 作者:甲基龙

支持我的努力!

Yeah! Buy the DRAGON a COFFEE!

Or leave a tip! ヾ(°∇°*)

客户端接口

包括截至2019年2月的完整API,还支持在客户折旧情况下的通用API查询:

特定于客户端

  • 初始化客户端

    • Client = OneMapClient(email, password)

      在初始化时生成标记

  • 生成新标记

    • get_token(email=None, password=None)

      返回:

      令牌,到期日

  • 一般查询

    • query_api(endpoint, param_dict)

类方法

记住要这样使用它们!Client.method()

位置搜索

  • 搜索
    • search(search_val, return_geom=True, get_addr_details=True, page_num=1))
  • 反向地理代码(SVY21和WGS84)
    • reverse_geocode_SVY21(coordinates, buffer=10, address_type="All", other_features=False)
    • reverse_geocode_WGS84(coordinates, buffer=10, address_type="All", other_features=False)

坐标转换

  • WGS84、SVY21和3857之间的所有转换器
    • WGS84_to_EPSG(coordinates)
    • WGS84_to_SVY21(coordinates)
    • SVY21_to_EPSG(coordinates)
    • SVY21_to_WGS84(coordinates)
    • EPSG_to_SVY21(coordinates)
    • EPSG_to_WGS84(coordinates)

主题

  • 检查主题状态
    • check_theme_status(query_name, date_time)
  • 获取主题信息
    • get_theme_info(query_name)
  • 获取所有主题
    • get_all_themes_info(more_info=False)
  • 检索主题
    • retrieve_theme(query_name, extents=None)

规划区域

  • 获取所有规划区域
    • get_all_planning_areas(year=None)
  • 获取规划区域名称
    • get_planning_area_names(year=None)
  • 获取规划区域边界
    • get_planning_area_bounds(coordinates, year=None)

填充查询

  • 经济状况
    • get_economic_statuses(year, planning_area, gender=None)
  • 教育出勤率
    • get_education_attendance(year, planning_area)
  • 民族
    • get_ethnic_groups(year, planning_area, gender=None)
  • 家庭工作收入(月)
    • get_household_monthly_work_income(year, planning_area)
  • 家庭规模数据
    • get_household_sizes(year, planning_area)
  • 家庭结构数据
    • get_household_structures(year, planning_area)
  • 工作收入数据
    • get_work_income(year, planning_area)
  • 工业人口
    • get_industries(year, planning_area)
  • 语言素养数据
    • get_language_literacy(year, planning_area)
  • 婚姻状况数据
    • get_marital_statuses(year, planning_area, gender=None)
  • 传输到学校数据的方式
    • get_modes_of_transport_to_school(year, planning_area)
  • 工作数据传输方式
    • get_modes_of_transport_to_work(year, planning_area)
  • 职业数据
    • get_occupations(year, planning_area)
  • 年龄数据
    • get_age_groups(year, planning_area)
  • 宗教资料
    • get_religious_groups(year, planning_area)
  • 口语数据
    • get_spoken_languages(year, planning_area)
  • 租赁数据
    • get_tenancy(year, planning_area)
  • 户型数据
    • get_dwelling_types(year, planning_area)
  • 居住类型人口数据
    • get_population_by_dwelling_types(year, planning_area)

路由服务

  • 获取路线
    • get_route(start_coordinates, end_coordinates, route_type)
  • 获取公共交通路线
    • get_public_transport_route(start_coordinates, end_coordinates, date, time, mode, max_walk_distance=None, num_itineraries=1)

静态地图生成器

  • 生成静态映射
    • generate_static_map(layer_chosen, location, zoom, width, height, polygons=None, lines=None, points=None, color=None, fill_color=None)

OneMap API客户端更改日志

v1.0.0-2019年7月9日

添加了

  • 初始版本:
    • 具有完整API的OneMapClient

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javascript如何找到socket。同一局域网上的IO服务器?   将Java代码格式化为Word/RTF格式   java学习对象以及如何将分配的变量封装到私有变量   java Websocket客户端不在Tomcat中工作   java如何在点击按钮时打开本机表情键盘?   java使用哪个Maven GlassFish插件?   Eclipse Java构建路径不允许添加外部JAR   继承Java6集合。勾选适当的用法   JavaApacheDateUtils:使用多个模式解析日期   java hibernate如何生成查询?   具有id或链接的java Dropbox下载文件或文件夹   java模态对话框未在PrimeFaces 5上显示   java将类对象转换为人类可读的字符串   更新数据库中字段的java通用方法   java无法通过Apache Tomcat访问网络文件夹