美文网首页
使用高德api匹配地址

使用高德api匹配地址

作者: michaelxwang | 来源:发表于2020-07-26 14:00 被阅读0次
    # -*- coding: utf-8 -*-
    """
    Created on Sun Jul 26 11:47:58 2020
    
    @author: michaelxwang
    """
    import requests
    import json
    import pandas as pd
    
    
    key ='你的key值'
    cwd ='./data.csv'
    
    
    def request_url_get(url):
        """ 请求url方法get方法 """
        try:
            r = requests.get(url=url, timeout=30)
            if r.status_code == 200:
                return r.text
            return None
        except:
            print('请求url返回错误异常')
            return None
        
        
    def parse_json(content_json):
        """  解析json函数 """
        result_json = json.loads(content_json)
        return result_json
    
    def request_api(url):
        """ 请求高德api 解析json """
        result = request_url_get(url)
        result_json = parse_json(result)
        return result_json
    
    def run():
        """ 运行函数 """
        loc = pd.read_table(cwd,sep = ',', encoding = 'utf-8')
        length = len(loc['物流地址'])
        region = pd.DataFrame()
    
        for i,location_str in enumerate(loc['物流地址']):
            print(i,'/',length,location_str)
            index_url = f'https://restapi.amap.com/v3/geocode/geo?address={location_str}&key={key}'
            index_result = request_api(index_url)
            df =pd.DataFrame(index_result['geocodes'])
            df['物流地址']=location_str
            region = region.append(df, ignore_index=True,sort=True)
    
        region.to_csv('loc_with_region.csv',sep='|',index=False,quoting=1,encoding = 'GB18030')
    
    if __name__ == '__main__':
        run()
        
    
    
    

    相关文章

      网友评论

          本文标题:使用高德api匹配地址

          本文链接:https://www.haomeiwen.com/subject/wsmwlktx.html