Python下用Google Map查询地址的经纬度
2015-07-31 16:09
155 查看
环境:python3
坑:python2在开了goagent***后,运行查询程序会报错,"非法proxy",原理不明;
要点:urllib.parse.quote编码含中文地址的url,python才能正确解码处理
代码实现如下:
坑:python2在开了goagent***后,运行查询程序会报错,"非法proxy",原理不明;
要点:urllib.parse.quote编码含中文地址的url,python才能正确解码处理
代码实现如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- import urllib from urllib.request import urlopen import json def getGeoForAddress(address): # address = "上海市中山北一路121号" addressUrl = "http://maps.googleapis.com/maps/api/geocode/json?address=" + address #中文url需要转码才能识别 addressUrlQuote = urllib.parse.quote(addressUrl, ':?=/') response = urlopen(addressUrlQuote).read().decode('utf-8') responseJson = json.loads(response) #type of response is string # print(type(response)) #type of responseJson is dict # print(type(responseJson)) lat = responseJson.get('results')[0]['geometry']['location']['lat'] lng = responseJson.get('results')[0]['geometry']['location']['lng'] print(address + '的经纬度是: %f, %f' %(lat, lng)) return [lat, lng] if __name__ == '__main__': main()
相关文章推荐
- python初学小结1
- python字符串操作
- openCV—Python(8)—— 图像直方图及其直方图均衡化
- Python学习资料汇总
- webQQ 中hash值的计算 python实现 2015年7月
- python tab自动补全脚本
- Python 简单模块学习
- python的多重赋值
- Python制作数据导入导出工具
- Python with yield语句
- python2.7.10的安装
- python、ipython的安装以及命令行自动补全功能实现
- 解决 python 中读写文件的终极方案 UnicodeDecodeError: 'gbk' codec can't decode byte 0x9d in position 1270: illega
- python 字符串操作
- Python GIL
- python的函数定义
- python 安全编码&代码审计
- python threading模块2
- python 列表生成式
- python for android apk