无法在python中导入名称GoogleMaps
我正在使用下面的代码获取地址的纬度和经度:无法在python中导入名称GoogleMaps,python,python-3.x,Python,Python 3.x,我正在使用下面的代码获取地址的纬度和经度: from googlemaps import GoogleMaps gmaps = GoogleMaps(api_key) address = 'Constitution Ave NW & 10th St NW, Washington, DC' lat, lng = gmaps.address_to_latlng(address) print lat, lng 但是我得到了下面的错误 File "C:/Users/Pavan/PycharmP
from googlemaps import GoogleMaps
gmaps = GoogleMaps(api_key)
address = 'Constitution Ave NW & 10th St NW, Washington, DC'
lat, lng = gmaps.address_to_latlng(address)
print lat, lng
但是我得到了下面的错误
File "C:/Users/Pavan/PycharmProjects/MGCW/latlong6.py", line 1, in <module>
from googlemaps import GoogleMaps
ImportError: cannot import name GoogleMaps
文件“C:/Users/Pavan/PycharmProjects/MGCW/latlong6.py”,第1行,在
从谷歌地图导入谷歌地图
ImportError:无法导入名称GoogleMaps
我看到了另一个与此类似的问题,但解决方案对我不起作用。我想你要找的是
客户端
类,而不是谷歌地图
如果要调用它,请按如下方式导入它:
从googlemaps导入客户端作为googlemaps使用,无需api密钥
从他们的例子来看:
from geopy.geocoders import Nominatim
geolocator = Nominatim()
location = geolocator.geocode("175 5th Avenue NYC")
print(location.address)
print((location.latitude, location.longitude))
印刷品:
Flatiron Building, 175, 5th Avenue, Flatiron, New York, NYC, New York, 10010, United States of America
(40.7410861, -73.9896297241625)
[-76.1438449, 40.229888]
[-77.046567, 38.8924587]
另一个选项是从解析json。例如:
import requests, json
url = 'http://photon.komoot.de/api/?q='
addresses = ['175 5th Avenue NYC', 'Constitution Ave NW & 10th St NW, Washington, DC']
for address in addresses:
resp = requests.get(url=url+address)
data = json.loads(resp.text)
print data['features'][0]['geometry']['coordinates']
印刷品:
Flatiron Building, 175, 5th Avenue, Flatiron, New York, NYC, New York, 10010, United States of America
(40.7410861, -73.9896297241625)
[-76.1438449, 40.229888]
[-77.046567, 38.8924587]
这些都是在洛恩,拉特。第二个是有点偏离约1英里。街道交叉口似乎很困难。我可以为多个地址编写一个代码,但它从来都不起作用。。
终于找到了这个可以批量生成地理代码的网站。。
我认为它可能对寻找批量地理编码的人有用。。
它还具有反向地理编码
用这句话来安装和使用Python中的googlemaps api,Andrzej的回答对我很有用
from googlemaps import Client as GoogleMaps
为了补充他的话,你需要
- 单击Google云平台控制台中的API库
- 搜索“地理定位API”
- 点击“启用”
如果在启用此功能之前创建API密钥,也会出现该错误。我也有同样的问题
在“凭据”选项卡下,您将看到创建或复制API密钥的选项。是否这样做了?现在我收到了gmaps=GoogleMaps(API密钥)名称中第2行的错误文件“C:/Users/Pavan/PycharmProjects/MGCW/latlong6.py”。错误:名称“API密钥”不正确defined@PavanChakravarthy那是因为你需要一个api。改为使用geopy。是否定义了api\U密钥的名称?您似乎没有。请查看以下API键的描述:此代码在单个位置运行良好&当我经过多个位置时,所有纬度和经度都相同..现在似乎可以了。。无论如何,我需要找到44000个地点。。将尝试将它们放入一个文件中并将其传递。@PavanChakravarthy我对库不太熟悉,但它们似乎有很好的文档,正如预期的那样。上面的代码在少数位置运行良好&如果找不到坐标,其他位置也会失败。@PavanChakravarthy是的geopy似乎无法处理一些问题地址类型。请使用photon.komoot.de查看我的另一个答案。您的答案不正确。问题在于软件包,而不是安装!