模块 'six.moves' 没有属性 'collections_abc'
module 'six.moves' has no attribute 'collections_abc'
我有一个连接到 YouTube API 版本 3 并检索 public 数据的脚本。此脚本部署在气流中,它运行良好了一个月,今天它失败了,并显示以下行的消息:
def youtube_search(term,region):
youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION, developerKey=DEVELOPER_KEY,cache_discovery=False)
File "/usr/local/airflow/.local/lib/python3.6/site-packages/googleapiclient/discovery.py", line 455, in build_from_document
if isinstance(client_options, six.moves.collections_abc.Mapping):
AttributeError: module 'six.moves' has no attribute 'collections_abc'
我去 discovery.py
上查看了 455th 行
if isinstance(client_options, six.moves.collections_abc.Mapping):
client_options = google.api_core.client_options.from_dict(client_options)
six
module好久没变了,我的脚本也没有部署在airflow里面,配置也没变
由于 Google 模块导入 six
,没有改变,我不明白为什么会随机出现这个错误?
您是明确指定您正在使用的 google-api-python-client 版本,还是只使用可用的最新版本?
2020 年 9 月 14 日发布了新版本 (v1.12.0),随后是错误修复版本 v.1.12.1,修复了与 six
模块依赖相关的错误. (来自 GitHub 的发行说明:需要六个>=1.13.0 (#1030) (4acecc3))
您可能 运行 发现了 v1.12.0 中的错误。
Six 是默认安装的库之一。根据这个 Github 问题:
At the moment tests always install the latest version of dependencies. We're going to move to having explicit requirements.txt for tests runs so we catch lower bound issues like this automatically in the future.
目前,您可以使用 1.11.0 或升级 6。新版本 1.12.1 应该在今天晚些时候发布,调整后的引脚为 6。
https://github.com/googleapis/google-api-python-client/issues/1029
只是 运行 pip install --upgrade six
造成此问题的原因通常是您本地环境中的模块 'six' 已与 [=16] 所需的版本过时=]-api-python-客户端库。
我有一个连接到 YouTube API 版本 3 并检索 public 数据的脚本。此脚本部署在气流中,它运行良好了一个月,今天它失败了,并显示以下行的消息:
def youtube_search(term,region):
youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION, developerKey=DEVELOPER_KEY,cache_discovery=False)
File "/usr/local/airflow/.local/lib/python3.6/site-packages/googleapiclient/discovery.py", line 455, in build_from_document
if isinstance(client_options, six.moves.collections_abc.Mapping):
AttributeError: module 'six.moves' has no attribute 'collections_abc'
我去 discovery.py
if isinstance(client_options, six.moves.collections_abc.Mapping):
client_options = google.api_core.client_options.from_dict(client_options)
six
module好久没变了,我的脚本也没有部署在airflow里面,配置也没变
由于 Google 模块导入 six
,没有改变,我不明白为什么会随机出现这个错误?
您是明确指定您正在使用的 google-api-python-client 版本,还是只使用可用的最新版本?
2020 年 9 月 14 日发布了新版本 (v1.12.0),随后是错误修复版本 v.1.12.1,修复了与 six
模块依赖相关的错误. (来自 GitHub 的发行说明:需要六个>=1.13.0 (#1030) (4acecc3))
您可能 运行 发现了 v1.12.0 中的错误。
Six 是默认安装的库之一。根据这个 Github 问题:
At the moment tests always install the latest version of dependencies. We're going to move to having explicit requirements.txt for tests runs so we catch lower bound issues like this automatically in the future.
目前,您可以使用 1.11.0 或升级 6。新版本 1.12.1 应该在今天晚些时候发布,调整后的引脚为 6。 https://github.com/googleapis/google-api-python-client/issues/1029
只是 运行 pip install --upgrade six
造成此问题的原因通常是您本地环境中的模块 'six' 已与 [=16] 所需的版本过时=]-api-python-客户端库。