Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ModuleNotFoundError:没有名为';google.appengine';_Python_Python 3.x_Google App Engine_Google Custom Search_Google Search Api - Fatal编程技术网

Python ModuleNotFoundError:没有名为';google.appengine';

Python ModuleNotFoundError:没有名为';google.appengine';,python,python-3.x,google-app-engine,google-custom-search,google-search-api,Python,Python 3.x,Google App Engine,Google Custom Search,Google Search Api,我想在windows上用Python 3进行谷歌搜索。谷歌的说明说他们支持python3,并输入“gcloud topic init”以获取详细信息,但没有说python2.7没有解释器。我是否必须安装python2.7才能了解如何让它在python3上工作 在python3上,我收到如下错误消息。我已经设置了一个API密钥和一个自定义搜索引擎。我做了“pip安装谷歌api python客户端”。我下载并运行了GoogleCloudSDKInstaller。这就是错误: from googlea

我想在windows上用Python 3进行谷歌搜索。谷歌的说明说他们支持python3,并输入“gcloud topic init”以获取详细信息,但没有说python2.7没有解释器。我是否必须安装python2.7才能了解如何让它在python3上工作

在python3上,我收到如下错误消息。我已经设置了一个API密钥和一个自定义搜索引擎。我做了“pip安装谷歌api python客户端”。我下载并运行了GoogleCloudSDKInstaller。这就是错误:

from googleapiclient.discovery import build
service = build("customsearch", "v1", developerKey="xxxxxx")
我得到:

[googleapiclient.discovery_cache:WARNING]:file_cache is unavailable when using oauth2client >= 4.0.0 or google-auth (__init__.py:44, time=Apr-07 17:25) Traceback (most recent call last):   File "C:\Users\simon\Anaconda3\lib\site-packages\googleapiclient\discovery_cache\__init__.py", line 36, in autodetect
    from google.appengine.api import memcache ModuleNotFoundError: No module named 'google.appengine'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):   File "C:\Users\simon\Anaconda3\lib\site-packages\googleapiclient\discovery_cache\file_cache.py", line 33, in <module>
    from oauth2client.contrib.locked_file import LockedFile ModuleNotFoundError: No module named 'oauth2client'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):   File "C:\Users\simon\Anaconda3\lib\site-packages\googleapiclient\discovery_cache\file_cache.py", line 37, in <module>
    from oauth2client.locked_file import LockedFile ModuleNotFoundError: No module named 'oauth2client'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):   File "C:\Users\simon\Anaconda3\lib\site-packages\googleapiclient\discovery_cache\__init__.py", line 41, in autodetect
    from . import file_cache   File "C:\Users\simon\Anaconda3\lib\site-packages\googleapiclient\discovery_cache\file_cache.py", line 41, in <module>
    'file_cache is unavailable when using oauth2client >= 4.0.0 or google-auth') ImportError: file_cache is unavailable when using oauth2client >= 4.0.0 or google-auth [googleapiclient.discovery:INFO]:URL being requested: GET https://www.googleapis.com/discovery/v1/apis/customsearch/v1/rest?key=AIzaSyBGDtIo_P8xXbn0ksb15wUhy6sdR_eBDpU
[GoogleAppClient.discovery\u缓存:警告]:当使用oauth2client>=4.0.0或google auth(\uuuuu init\uuuuuuuuuuuuuuuupy:44,time=Apr-07 17:25)时,文件\u缓存不可用(最后一次调用):文件“C:\Users\simon\Anaconda3\lib\site packages\GoogleAppClient\discovery\ucache\\uuuuuuuuuuuuuuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuu
从google.appengine.api导入memcache模块NotFoundError:没有名为“google.appengine”的模块
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用):文件“C:\Users\simon\Anaconda3\lib\site packages\googleapiclient\discovery\u cache\File\u cache.py”,第33行,在
从oauth2client.contrib.locked_文件导入LockedFile ModuleNotFoundError:没有名为“oauth2client”的模块
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用):文件“C:\Users\simon\Anaconda3\lib\site packages\googleapiclient\discovery\u cache\File\u cache.py”,第37行,在
从oauth2client.locked\文件导入LockedFile ModuleNotFoundError:没有名为“oauth2client”的模块
在处理上述异常期间,发生了另一个异常:
回溯(最近的最后一次调用):文件“C:\Users\simon\Anaconda3\lib\site packages\GoogleAppClient\discovery\u cache\\uuuuuuu init\uuuuuuu.py”,第41行,在自动检测中
从…起导入文件\u缓存文件“C:\Users\simon\Anaconda3\lib\site packages\googleapiclient\discovery\u cache\file\u cache.py”,第41行,在
“使用oauth2client>=4.0.0或google auth时,文件\u缓存不可用”)导入错误:使用oauth2client>=4.0.0或google auth时,文件\u缓存不可用[GoogleAppClient.discovery:INFO]:请求的URL:GEThttps://www.googleapis.com/discovery/v1/apis/customsearch/v1/rest?key=AIzaSyBGDtIo_P8xXbn0ksb15wUhy6sdR_eBDpU

在创建服务时需要参数
cache\u discovery=False
,如下所示:

service = discovery.build('customsearch', 'v1', credentials=<...>, cache_discovery=False)
service=discovery.build('customsearch','v1',credentials=,cache\u discovery=False)

尽管它看起来像一个级联错误,但仔细看第一行时,实际上这只是一个警告:

[GoogleAppClient.discovery\u缓存:警告]:文件\u缓存不可用…

因此,如果您没有访问实例化的权限,可以按如下方式抑制它:

导入日志记录

logging.getLogger('googleapiclient.discovery\u cache').setLevel(logging.ERROR)

您仍然会得到任何实际错误

感谢谁给了这个答案


另请参见讨论

,如果您想知道原因,将非常高兴?仅仅遵循指南就会导致错误me@Rob,我发现了同样的问题,似乎缓存系统中有一条断开的代码路径。您可以在更多信息中看到,但缓存似乎无法在oauth2client>4.0.0的情况下正常工作注意:我在github上提到的答案在“客户端”中缺少“n”。