开发者社区 > 云原生 > Serverless > 正文

请教一下,我在云函数python3.9的运行环境中导入requests包就提示这个错误,在Termi

请教一下,我在云函数python3.9的运行环境中导入requests包就提示这个错误,在Terminal里重新安装了其他版本的库也不行,是不是安装库的方式不太对

提问30.png

展开
收起
巴拉巴拉巴拉 2023-05-06 10:07:35 332 0
4 条回答
写回答
取消 提交回答
  • 值得去的地方都没有捷径

    这个错误提示表明在云函数 Python3.9 运行环境中缺少 OpenSSL 库,而 requests 库依赖 OpenSSL 库。解决方法如下:

    在云函数的代码编辑器中,打开 requirements.txt 文件。

    添加以下内容:

    cryptography>=3.3.2 保存并提交 requirements.txt 文件,等待云函数重新部署。

    在代码中导入 requests 库,即可正常使用。

    这个方法的原理是,cryptography 库包含 OpenSSL 库的 Python 绑定,通过安装 cryptography 库可以解决 OpenSSL 库缺失的问题。

    2023-05-06 16:50:38
    赞同 展开评论 打赏
  • ssl版本过低导致request不兼容openssl版本,可以升级下openssl版本。

    2023-05-06 13:55:17
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    在阿里云函数计算中,如果您需要使用第三方库,需要在本地安装后将其打包上传到云端。可以通过以下步骤来安装第三方库并打包上传:

    1. 在本地创建一个空目录,例如 my_package
    2. 进入该目录,在终端中执行以下命令安装需要的库,例如 requests

      pip install requests -t .
      

      注意:这里的 -t 参数表示将库安装在当前目录下的 site-packages 目录中。

    3. 将其他需要的库也安装到该目录下。

    4. 将整个目录打包成 zip 文件,例如 my_package.zip
    5. 在阿里云函数计算控制台中创建一个 Python 函数,并将打包好的 my_package.zip 文件上传到函数代码包中。
    6. 在函数代码中通过 import requests 来引用 requests 库。

    需要注意的是,如果您使用的是 Windows 操作系统,在执行 pip install 命令时可能会遇到路径长度过长的问题。可以尝试使用 pip install 命令的 --target 参数来指定一个较短的路径,例如:

    pip install requests --target C:\temp
    

    这样就会将库安装在 C:\temp 目录下,避免路径过长的问题。

    2023-05-06 11:57:19
    赞同 展开评论 打赏
  • openssl版本过低。

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-05-06 10:10:09
    赞同 展开评论 打赏

快速交付实现商业价值。

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载