我需要对地址进行地址解析以显示在Google地图上的纬度,经度对,但我需要在Django中执行此服务器端。我只能找到对JavaScript V3 API的参考。我如何从Python做到这一点?如何从Python中获取地址的坐标
7
A
回答
11
我建议使用Py-Googlemaps。要使用它很简单:
from googlemaps import GoogleMaps
gmaps = GoogleMaps(API_KEY)
lat, lng = gmaps.address_to_latlng(address)
5
谷歌的数据有API for Maps有REST-ful API - 他们也有一个内置Python library围绕它了。
0
下面是谷歌地图API V3(基于this answer)工作代码:
import urllib
import simplejson
googleGeocodeUrl = 'http://maps.googleapis.com/maps/api/geocode/json?'
def get_coordinates(query, from_sensor=False):
query = query.encode('utf-8')
params = {
'address': query,
'sensor': "true" if from_sensor else "false"
}
url = googleGeocodeUrl + urllib.urlencode(params)
json_response = urllib.urlopen(url)
response = simplejson.loads(json_response.read())
if response['results']:
location = response['results'][0]['geometry']['location']
latitude, longitude = location['lat'], location['lng']
print query, latitude, longitude
else:
latitude, longitude = None, None
print query, "<no results>"
return latitude, longitude
的参数和其他信息的完整列表,请参阅official documentation。
0
Python包googlemaps
似乎很能够进行地理编码和反向地理编码。
Google地图包的最新版本,请访问:https://pypi.python.org/pypi/googlemaps
6
我会强烈建议使用geopy。它将返回经纬度,之后您可以在Google JS客户端中使用它。
>>> from geopy.geocoders import Nominatim
>>> geolocator = Nominatim()
>>> location = geolocator.geocode("175 5th Avenue NYC")
>>> print(location.address)
Flatiron Building, 175, 5th Avenue, Flatiron, New York, NYC, New York, ...
>>> print((location.latitude, location.longitude))
(40.7410861, -73.9896297241625)
此外,您可以专门定义要使用GoogleV3
类作为geolocator
>>> from geopy.geocoders import GoogleV3
>>> geolocator = GoogleV3()
相关问题
- 1. 如何从谷歌地图获取地址和坐标
- 2. 如何从内容的总地址获取坐标?
- 3. Google Maps API - 获取地址的坐标
- 4. 如何在android中获取地址的坐标
- 5. 从谷歌地图获取地址和坐标
- 6. 如何获取UIImage的地理坐标?
- 7. 从地址获取GPS坐标的代码(VB6/VBA/VBScript)
- 8. Python Open CV - 获取地区坐标
- 9. 如何使用MAC地址获取GPS坐标?
- 10. 如何从HERE地图获取特定地点的GPS坐标
- 11. 如何在Python中获取IP地址
- 12. 如何从iPhone中的照片获取地理坐标系
- 13. html5获取和使用坐标获得地址没有地图
- 14. 从时区或IP地址获取GPS坐标
- 15. 如何从locationManager获取viewDidLoad的坐标?
- 16. 从openlayers中获取坐标
- 17. Reactjs从(地理)json获取坐标
- 18. [Javascript]从openlayers地图获取坐标
- 19. 如何从android库中获取地址
- 20. 如何从使用jde的坐标获取地理位置4.5
- 21. 从谷歌地图中的地区名称获取坐标Api
- 22. 如何从Tweepy获取坐标?
- 23. 如何从MS-Word获取坐标?
- 24. 如何从图像获取坐标CGRectMake
- 25. 如何从TraCIDem11p.cc获取RSU坐标?
- 26. 将地址转换为Python中的地理坐标
- 27. 获取Google地图标记的坐标
- 28. 如何从python数据包中获取IP地址?
- 29. python - 将坐标数量转换成地址或城市地址
- 30. 如何获取vtkboxwidget坐标
是否有可能获得与此库的工作了API密钥使用谷歌的服务?我生成了一个JavaScript v3 API密钥,但它似乎没有工作。 – powerj1984 2013-04-23 14:57:42
刚刚结束使用此代替:http://code.xster.net/pygeocoder/wiki/Home – powerj1984 2013-04-23 15:02:00
OP的回购:https://github.com/googlemaps/google-maps-services-python – 2016-11-06 12:19:00