ImportError: cannot import name pubsub_v1

ImportError: cannot import name pubsub_v1

我需要从 google.cloud 模块导入 Pubsub_v1 和 bigquery。我已经安装了它,pip freeze 显示如下:

gapic-google-cloud-pubsub-v1==0.15.4
google-cloud-bigquery==0.26.0
google-cloud-pubsub==0.27.0
proto-google-cloud-pubsub-v1==0.15.4

在我的 python 脚本中,我正在导入如下模块:

import os 
from google.cloud import pubsub_v1 
import time 
import json 
from google.cloud import bigquery 

脚本抛出错误:

ImportError: cannot import name pubsub_v1

如果我 运行 $sudo pip install --upgrade google-cloud-pubsub 那么它可以导入 pubsub 但无法导入 Bigquery。我需要这两个模块。有人可以帮忙吗?

使用

升级了其他 google.cloud 个模块
$sudo pip install --upgrade google-cloud-bigquery
$sudo pip install --upgrade google-cloud-storage
$sudo pip install --upgrade google-cloud-logging

它解决了问题。

我遇到了同样的问题,它发生在我身上是因为我在 google-cloud 之前安装了 google-cloud-pubsub 所以这是我的建议:

sudo pip uninstall google-cloud-pubsub
sudo pip uninstall google-cloud
sudo pip install google-cloud
sudo pip install google-cloud-pubsub

$sudo pip install googleapis-common-protos

它解决了我的问题!

这些有助于解决 python 3.x 版本的问题:(我假设 pip3 已经安装) sudo pip3 install google-cloud-bigquery sudo pip3 install google-cloud-pubsub sudo apt-get upgrade

我在尝试 pubsub python 库时遇到了同样的问题。我按照以下步骤解决了问题:

升级pip库:

pip install --upgrade pip setuptools
pip3 install --ignore-installed PyYAML
pip3 install google-cloud-pubsub