ModuleNotFoundError:没有名为'googlemaps'的模块

时间:2018-01-31 12:33:02

标签: python django google-maps

我是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也似乎没问题。但是我做错的地方让它无法启动服务器?

2 个答案:

答案 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模块。