【问题标题】:cannot import name 'dataproc_v1' from 'google.cloud' (unknown location)无法从“google.cloud”(未知位置)导入名称“dataproc_v1”
【发布时间】:2020-12-29 10:40:48
【问题描述】:

尝试从计算机通过 Jupyter Notebook 访问 Using Dataproc,我使用 pip 安装了所需的库。但是,导入时出错

import google.cloud.dataproc_v1

错误如下:

ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-3-fc8862c62c75> in <module>
----> 1 import google.cloud.dataproc_v1

还尝试安装包 python3 -m pip install google-cloud-dataproc。作为参考,这里是 pip list 的输出。任何建议/帮助表示赞赏!

Package                  Version
------------------------ ---------
cachetools               4.1.1
certifi                  2020.6.20
chardet                  3.0.4
google-api-core          1.22.2
google-auth              1.21.1
google-cloud-dataproc    2.0.0
googleapis-common-protos 1.52.0
grpcio                   1.32.0
idna                     2.10
libcst                   0.3.10
mypy-extensions          0.4.3
pip                      20.2.2
proto-plus               1.9.1
protobuf                 3.13.0
pyasn1                   0.4.8
pyasn1-modules           0.2.8
pytz                     2020.1
PyYAML                   5.3.1
requests                 2.24.0
rsa                      4.6
setuptools               45.0.0
six                      1.15.0
typing-extensions        3.7.4.3
typing-inspect           0.6.0
urllib3                  1.25.10
wheel                    0.35.1

【问题讨论】:

  • 这样做:from google.cloud import dataproc_v1
  • 不幸的是,错误仍然存​​在。

标签: python-3.x google-cloud-platform cloud google-cloud-dataproc dataproc


【解决方案1】:

如果您是从笔记本中安装,请在单元格中尝试:

! pip install google.cloud.dataproc_v1

如果由于缺少访问权限而出现错误,请尝试使用 --user 选项,即

! pip install google.cloud.dataproc_v1 --user

重启内核并再次尝试导入库。

【讨论】:

  • 收到一个新错误:!点安装 google.cloud.dataproc_v1 ! pip install google.cloud.dataproc_v1 正在收集 google.cloud.dataproc_v1 找不到满足 google.cloud.dataproc_v1 要求的版本(来自版本:)找不到与 google.cloud.dataproc_v1 匹配的分发版
  • 你重启内核了吗?您是否也尝试过使用 --user 选项?
【解决方案2】:

您能否确认您是从 Dataproc 上的 Jupyter notebook 运行的,以及哪个版本的 Dataproc?

我已经使用 Dataproc 1.5 版测试了在 Dataproc 笔记本上运行的以下代码

from google.cloud import dataproc_v1
from google.cloud import storage

project_id = 'project'
region = 'us-central1'
cluster_name = 'cluster'

cluster_client = dataproc_v1.ClusterControllerClient(
    client_options={"api_endpoint": "{}-dataproc.googleapis.com:443".format(region)}
)

for cluster in cluster_client.list_clusters(request={"project_id": project_id, "region": region}):
    cluster_name = cluster.cluster_name
    print(f"{cluster_name}")

【讨论】:

    猜你喜欢
    • 2021-02-06
    • 2021-03-21
    • 1970-01-01
    • 2022-01-24
    • 2019-02-26
    • 2020-09-13
    • 2021-01-16
    • 2021-03-12
    • 1970-01-01
    相关资源
    最近更新 更多