gpt4 book ai didi

python - 谷歌云功能 - ImportError : cannot import name 'pubsub' from 'google.cloud' (unknown location)

转载 作者:太空狗 更新时间:2023-10-29 14:02:59 24 4
gpt4 key购买 nike

我正在部署一个 Google Cloud Functions,它将使用 google.cloud.pubsub_v1 启动其他 Google Cloud Functions,我收到此错误 ImportError: cannot import name 'pubsub' from 'google.cloud'(未知位置)

我的 requirements.txt 文件的开头是这样的

# Function dependencies, for example:
# package>=version
google-cloud-pubsub
....

我的 main.py 脚本的开头如下所示:

import base64
import json
from google.cloud import pubsub_v1

publisher = pubsub_v1.PublisherClient()
topic_path = publisher.topic_path(<PROJECT_ID>, <PUBSUB_TOPIC>)

我正在从 Google 云源存储库部署此代码。我已通读 this SO post关于我的错误,但这个问题似乎与客户端应用程序中出现的错误有关。我的错误是在部署过程中由 Google Cloud 函数本身生成的。我没有 Google 用来运行我的进程的自动创建的 VM 的 sudo 权限,对吗?我应该能够从 requirements.txt 文件中解决这个问题,但我尝试过的任何东西似乎都不起作用。

更令人沮丧的是,当我将同样的代码放入基于网络的 Google 函数编辑器的“内联编辑器”中时,我没有收到错误。我只在从存储库加载代码时收到此错误。

存储库中的当前文件结构如下所示:

.
├── package
| ├── main.py
| ├── script1.py
| └── script2.py
├── package2
├── ...
└── requirements.txt

由于我在 this SO Question 中遇到的问题,我将 main.py 移到了一个包中

关于如何解决此导入错误的任何想法?

最佳答案

您的 main.py 文件和 requirements.txt 文件应该在同一目录中,并且这也应该是您从中部署函数的目录。

另外,google-cloud包已弃用,不应与其他 google-cloud-* 包一起使用。您应该将其从您的 requirements.txt 文件中删除。

关于python - 谷歌云功能 - ImportError : cannot import name 'pubsub' from 'google.cloud' (unknown location),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52452269/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com