当前位置: 首页 > 知识库问答 >
问题:

部署云功能时Google BigQuery导入错误

云捷
2023-03-14

我有一个python云函数代码。来自GCS的txt文件,对其进行解析,并将行写入bigquery。当我试图从MacOS将此云功能部署到Google cloud时,它给出了以下错误

我已经验证了我的GCP项目中是否启用了Bigquery API。

GCloud函数部署sql_upload运行时python37触发器桶测试桶入口点load_sql

Deploying function (may take a while - up to 2 minutes)...failed.                                                                                                                                          
ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Function failed on loading user code. Error message: Code in file main.py can't be loaded.
Detailed stack trace: Traceback (most recent call last):
  File "/env/local/lib/python3.7/site-packages/google/cloud/functions/worker.py", line 305, in check_or_load_user_function
    _function_handler.load_user_function()
  File "/env/local/lib/python3.7/site-packages/google/cloud/functions/worker.py", line 184, in load_user_function
    spec.loader.exec_module(main)
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed  File "/user_code/main.py", line 24, in <module>
    from google.cloud import bigquery
ImportError: cannot import name 'bigquery' from 'google.cloud' (unknown location)

共有1个答案

万高轩
2023-03-14

Python中的依赖关系由pip管理,并在一个名为requirements的元数据文件中表示。txt。此文件必须与主文件位于同一目录中。包含函数代码的py文件。

如果此代码在您的计算机上运行,那么只需创建需求即可。txt文件作者:

pip freeze > requirements.txt

否则,首先必须安装bigquery的依赖项,然后创建需求文件:

pip install --upgrade google-cloud-bigquery
pip freeze > requirements.txt

看医生https://cloud.google.com/functions/docs/writing/specifying-dependencies-python https://cloud.google.com/bigquery/docs/reference/libraries#client-库安装python

 类似资料:
  • 1.grpc@1.20.0安装/users/me/desktop/appname/appname/functions/node_modules/grpc node-pre-gyp安装--fallback-to-build--library=static_library node-pre-gyp使用needle警告node-pre-gyp https下载 3.../ext/channel.cc:29

  • 我正在使用cloud函数部署python函数(版本=3.7,内存=1go,超时=1s)。 到目前为止,它非常有效。 但是,我注意到,默认情况下,云函数将其区域设置为。我需要我的函数在中,所以我使用

  • 希望这里有人能给我指明正确的方向。 谢谢!

  • 我试图从firebase CLI(8.12.1版)部署我的一个功能,但它一直失败。这个功能已经好几个星期没变了,所以我有点困惑为什么它现在失败了。 来自CLI的错误 函数[http api-(europe-west1)]:部署错误。生成失败:生成错误详细信息不可用。请在查看日志https://console.cloud.google.com/logs/viewer?project= 来自云控制台的

  • 我尝试使用my console在谷歌云平台上部署云功能。我使用的命令是, 但我得到了这个错误, 错误:(gcloud.functions.deploy)操作错误:代码=3,消息=Build failed:无法解析存储源:googleapi:错误404:未找到,未找到 我试着在谷歌上搜索,但似乎以前没有人遇到过这个错误消息。我也尝试过改变项目,部署效果很好。 如果有人知道是什么导致了这个错误,以及我