【问题标题】:Google Cloud Client Libraries in Python 2.7Python 2.7 中的 Google Cloud 客户端库
【发布时间】:2019-06-21 06:21:07
【问题描述】:

我一直在为我的项目使用 Google Cloud 客户端库并遇到导入错误。

导入错误:没有名为 cloud 的模块

我的项目中有 app.yaml,如下所示:

runtime: python27

api_version: 1
threadsafe: no

handlers:
- url: /.*
  script: main

现在我已经配置了 requirements.txt,其中包含 google-cloud-datastoregoogle-cloud-storage

requirements.txt

Flask==1.0.2
google-cloud-datastore
google-cloud-storage
google-api-python-client

现在,当我在 main.py 文件中导入 google.cloud 时,出现导入错误。

from google.cloud import storage

我已经在 Google App Engine

上部署了该项目

出现错误后,我将项目更改为 Python 3.7,然后部署到 App Engine 上,令我惊讶的是,它运行良好。

是因为 google-api-python-client 在 Python 2.7 中已被弃用,还是我在这里做错了什么

【问题讨论】:

  • 还请注意在 2 代标准环境中管理依赖项的方式之间的区别 - requirements.txt 在 3.7 中是必需且足够的,但在 2.7 中不是,请参阅 stackoverflow.com/a/56111441/4495081

标签: python google-app-engine google-cloud-platform google-client


【解决方案1】:

请注意,google-cloud-storage 不支持 Python 2.7 的 App Engine 标准环境。幸运的是,Google Cloud 提供了 Python 2.7 的替代方案。所以,要使用谷歌云存储,你需要安装GoogleAppEngineCloudStorageClient

在 lib 的父目录中,使用以下命令:

pip install -t lib GoogleAppEngineCloudStorageClient

然后,您可以像这样导入cloudstorage

import cloudstorage

请查找the official documentation:该示例使用webapp2 进行了详细说明,但它适用于 Flask。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多