python调用百度地图WEB服务API获取地点对应坐标值
本篇博客介绍如何使用Python调用百度地图WEB服务API获取地点对应坐标值,现有一系列结构化地址数据(如:北京市海淀区上地十街十号),目的是获取对应坐标值。
百度地图开发者平台路线规划使用说明网址
最终结果是写入了txt文件,所以需要在循环遇到错误的时候写入对应的可识别的值(看到这个值就知道这个结果是错误的,可以写对应数量的NA或者0值),方便后续分析。
#-*-coding:utf-8-*-
"""
CreatedonFriAug1510:06:162018
@author:zjp
Python3.6.6
"""
#加载必要的包
importcsv
importjson
importtime
importrequests
frombs4importBeautifulSoup
origin_path='E://GetRoute/HuaNan/中文地址.csv'#原始数据文件路径
new_path='E://GetRoute/HuaNan/地址对应坐标.txt'#爬取数据文件保存路径
url_geocode=r'http://api.map.baidu.com/geocoder/v2/?'#百度地图api网址
AK=['oFCSeioUzdN5NfzSlBBXqBEfXgp26mGM','Akqk5xjbSGzy1WC1IUF04K2CQWGtOFNv','HCdq1Ry35rwgVQwjAXqAEQGzWNY7pi1h',
'GtOZERwlG0PynPwFrBYaF9wWcAGxvaw8','iRKkZehZimIWdGoxfjlbtLrYb0VVgVaD','gG0KIBhAGpAVvaRUlwFjmOtsTKGRK2tf',
'CSsyosiklqyYUDNnBP0BR63fa9BzCHFf','mq4TZshHveVqML3icCC6AWnS25rbjYBz','rBYetA6WQNOlXtQWInz8ckRE0iCDsUjB',
'QUshHD8KUAk8y9gLwDhQ6RyOgQxEB8VD','7Ict6oZmpAYYXMjha2Tk5g4ENTCYwx03']#开发者应用密钥
cod=r'&ret_coordtype=bd09ll'#坐标类型(设置为百度坐标)
machine_data=csv.reader(open(origin_path,'r',encoding='utf-8'))#读取原始文件数据
n=0
akn=0
column_names='设备序列号取点方式1准确度1网点纬度网点经度网点名称取点方式2准确度2安装地址纬度安装地址经度安装地址取点准确度最佳纬度最佳经度安装方式最佳地址'
withopen(new_path,'a',encoding='utf-8')asf:#把变量名写入新文件
f.write(column_names)
f.write('\n')
f.close()
whileTrue:
try:
foraddrinmachine_data:#循环爬取每一条数据
province=str(addr[0])#省份
city=str(addr[1])#城市
mac=str(addr[2])#设备序列号
wd=str(addr[3])#网点名称
anz=str(addr[4])#安装地址
anz_type=str(addr[5])#安装类型
add1=province+city+wd
add2=province+city+anz
ifakn
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。