Python调用高德API实现批量地址转经纬度并写入表格

时间:2021-1-18 作者:admin

Python调用高德API实现批量地址转经纬度并写入表格

本段代码是先将需要转换经纬度的地址爬取在 ‘地址.csv’ 文件里,文件截图示例:
Python调用高德API实现批量地址转经纬度并写入表格

代码展示

# coding=utf-8
# SPL
# 时间:2020/12/20 21:15

import csv
import requests
import json
import pandas as pd

num=0
y=[]

with open("地址.csv", 'r') as f: #写入将要转换的地址的文件路径,此处为默认文件路径(要先将文件提前导入)(注意是csv格式文件)
        r = csv.reader(f, delimiter=',')
        for row in r:
            print(row[0])
            #记得在key=后面填入申请高德地图开发平台的key
            url = "http://restapi.amap.com/v3/geocode/geo?key=**********&address=" + row[0] 
            dat = {
                'count': "1",
                }

            r = requests.post(url, data=json.dumps(dat))
            s = r.json()
            b = s['geocodes']
            for j in range(0, 10000):
                try:
                    neirong1 = b[j]
                except:
                    continue

                try:
                    b = neirong1['location']
                except:
                    continue

                try:
                    lon_lat= b.split(',')
                    lon=float(lon_lat[0])
                    lat = float(lon_lat[1])
                    print(lon)
                    print(lat)
                except:
                    continue
                num += 1
                print("第" + str(num) + "条地址转换成功")
                y.append([row[0], lon, lat])
            result = pd.DataFrame(y)
            result.columns = ['地址', '经度', '纬度']
            result.to_csv('地址转经纬度.csv', encoding='utf-8-sig', index=False)

运行结果

Python调用高德API实现批量地址转经纬度并写入表格

转换成功后生成的表格截图 _
Python调用高德API实现批量地址转经纬度并写入表格

均为原创,转载请说明出处

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。