【问题标题】:Why does Python 3.7 runtime on Google Cloud Function not allow slackclient anymore?为什么 Google Cloud Function 上的 Python 3.7 运行时不再允许 slackclient?
【发布时间】:2020-03-23 04:17:45
【问题描述】:

我正在尝试部署 Python 3.7 运行时 Google Cloud Function 以通过 Slack API 发送消息。但是,我不断收到相同的错误:“ModuleNotFoundError: No module named 'slackclient'”。此功能在 6 个月前运行良好。出于测试目的,我创建了一个测试函数,它只是导入 slackclient 包并在这样做时打印“成功”。但是,这会导致相同的错误消息。

请在下面找到:main.pyrequirements.txt 的错误消息和屏幕截图的副本。有什么想法吗?

Deployment failure:
Function failed on loading user code. Error message: Code in file main.py can't be loaded.
Did you list all required modules in requirements.txt?
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 3, in <module>
    import slackclient
ModuleNotFoundError: No module named 'slackclient'

Screenshot of main.py

Screenshot of requirements.txt

【问题讨论】:

    标签: python-3.x google-cloud-platform google-cloud-functions slack-api


    【解决方案1】:

    所以我猜你以前有 slackclient 库的 v1。根据您现在需要的migration to v2 docs 和一般docs

    import slack

    不是

    import slackclient

    或者,您可以尝试将 slackclient&lt;2 添加到 requirements.txt 以使其使用 v1。但我真的会努力保持最新状态。

    【讨论】:

    • 非常感谢!是的,我一定拥有slackclient 库的 v1.x(不知道哈哈)。我不知道升级到第 2 版,所以我没有意识到他们在升级到第 2 版时做出了如此巨大的改变。
    猜你喜欢
    • 2019-07-13
    • 2019-08-22
    • 1970-01-01
    • 2021-05-14
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多