我是Django python编程的新手。现在我在服务器端工作。我想使用谷歌地图API,我的view.py是这样的:
from django.shortcuts import render
from django.shortcuts import HttpResponse
from googlemaps import *
# Create your views
gmaps = googlemaps.Client(key='A')
def index(request):
if request.method=="GET":
geocode_result = gmaps.geocode('1600 Amphitheatre Parkway, Mountain View, CA')
return geocode_result
另外,我已经使用pip安装了'googlemaps'。当我在IDE中导入它时,没有任何问题。但是,当我想启动服务器来测试代码时,服务器将无法运行并告诉我ModuleNotFoundError:没有名为'googlemaps'的模块,我很困惑我已经下载并将其添加到settings.py中,导入IDE也似乎没问题。但是我做错的地方让它无法启动服务器?
答案 0 :(得分:0)
我让它以两种不同的方式工作(假设有效的API密钥)。之一:
from googlemaps import Client
gmaps = Client(key='A')
或:
from googlemaps import *
gmaps = Client(key='A')
这些中的任何一个都适合你吗?
如果你仍然遇到问题,很可能它与你的virtualenv(如果使用)有关。尝试运行:
pip freeze
从命令行并搜索必需的库。
如果您没有API密钥,您当然可以考虑使用geopy。最后我检查过,不需要API密钥。
from geopy.geocoders import Nominatim
geolocator = Nominatim()
location = geolocator.geocode("175 5th Avenue NYC")
答案 1 :(得分:0)
将from googlemaps import *
更改为import googlemaps
from googlemaps import *
的作用是导入googlemaps
模块的所有内容。 import googlemaps
整体导入整个googlemaps
模块。