zoukankan      html  css  js  c++  java
  • 百度地图api的简单应用(一):POI检索

    使用之前,需要注册一个百度地图开发者账号,最好申请一个认证以获取更高的使用配额和并发上限。

    注册之后,申请一个应用,获得一个ak(密钥),并填写ip地址白名单。(这里我使用0.0.0.0/0,查了自己的ip但百度好像总是说我ip不对,算了)

    百度地图api的原理是,把你想输入的参数(调用功能、具体参数)体现在url中,把url打开,会返回一个json文件(也可xml文件,但默认json,且方便),这个json文件内包含了你想要的各种信息。

    一般最常用的就是poi(point of interests)检索了,我们以此为例,尝试一下地点检索功能。

    import json
    import requests
    import pandas as pd
    
    feature_data = []
    query = '银行'
    zx = [31.15,121.41];
    ys = [31.30,121.60]
    zb = str(zx[0]) + ',' + str(zx[1]) + ',' + str(ys[0]) + ',' + str(ys[1])
    ak = '我的密钥(这个得保密,不然每日额度可能直接被别人用了)'
    
    
    def url_to_file(url):
        data = requests.get(url).text
        hjson = json.loads(data)
        if hjson['message'] == 'ok':
            datalist = hjson['results']
            for each in datalist:
                feature_data.append(each)
    
    
    for k in range(100):
        url = 'http://api.map.baidu.com/place/v2/search?query=' + query + '&bounds=' + zb + '&page_size=20&page_num=' + str(
            k) + '&output=json&ak=' + ak
        url_to_file(url)
    
    feature = pd.DataFrame(feature_data)
    feature.to_csv(str(query)+'_按矩形.csv')

    然而,打开csv文件,会出现乱码。

    这时把文件用记事本方式打开->另存为->换一种字符编码(我将utf-8变为ANSI),便可以打开了。

  • 相关阅读:
    mybatisplus学习
    JSON数组读取和保存
    XML文件读写示例
    JSON代码示例
    Delphi接口示例代码
    获得wav语音文件时长
    javaweb注册页面学习之路(三)
    javaweb注册页面学习之路(二)
    javaweb注册页面学习之路(一)
    Django 目录
  • 原文地址:https://www.cnblogs.com/maoerbao/p/11461557.html
Copyright © 2011-2022 走看看