【问题标题】:Python Requests module no longer worksPython 请求模块不再工作
【发布时间】:2019-05-12 18:04:26
【问题描述】:

该模块曾经工作但现在调用它会引发以下错误:

回溯(最近一次通话最后一次):

中的文件“C:\Local_PythonScripts\trial.py”,第 2 行 导入请求
文件“C:\Python36\lib\site-packages\requests__init__.py”,第 97 行,在

从 。导入实用程序
文件“C:\Python36\lib\site-packages\requests\utils.py”,第 24 行,在
从 。导入证书
文件“C:\Python36\lib\site-packages\requests\certs.py”,第 15 行,在
从证书导入哪里
ModuleNotFoundError:没有名为“证书”的模块

我想我自己在 PIP 上运行了一些我从 Stack Overflow 复制的命令控制台中的代码,同时试图解决一个错误,即无法验证网页证书。我运行的代码添加了一些内容并删除了其他内容,我试图再次找到它,以便在这里显示它,但无济于事。

我已经尝试删除并重新加载“请求”,但它不会加载“证书”模块,我在命令窗口中运行 PIP 后得到的相关文本是:

无法获取 URL https://pypi.org/simple/certifi/: 确认 ssl 证书时出现问题:HTTPSConnectionPool(host='pypi.org', port=443):
url 超出最大重试次数:/simple/certifi/(由 SSLError(SSLError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] 证书验证失败 (_ssl.c:777)'),)) - 跳过
找不到满足要求的版本 certifi>=2017.4.17
(来自请求)(来自版本:)
找不到与 certifi>=2017.4.17 匹配的分布(来自请求)

【问题讨论】:

  • 您必须向我们展示您尝试在命令控制台中运行的代码
  • 我尝试运行一些我复制和粘贴但丢失的代码。这很尴尬,但我再也找不到了。我在这里有点麻烦。
  • 得到底部消息的代码只是一个简单的 PIP 安装:
  • 即py -3.6 -m pip 安装请求
  • 查看@Jewel 评论,否则如果它不起作用,您将不得不手动安装它

标签: python pip python-requests certificate verify


【解决方案1】:

首先您可以安装pip install certifi,然后使用此命令python -m pip install --upgrade pip 升级您的pip,然后尝试安装pip install requests。它对我有用

【讨论】:

  • Jewel,我在尝试直接安装“certifi”时仍然遇到与尝试安装“requests”时相同的错误。它说它找不到满足要求的“证书”版本
  • 您使用的是哪个操作系统?
  • 我使用的是 Windows 7
  • 首先打开您的命令提升为管理员访问权限。然后尝试执行那些命令如果仍然不起作用。所以你可以设置虚拟环境来执行你的python代码
【解决方案2】:

恐怕建议的答案不起作用。我卸载并重新安装了 PIP 也没有工作。最后,我卸载并重新安装了 Python 和 PIP,它工作正常。我不知道我一开始对它做了什么会造成如此大的伤害,但这就是修复它所需要的。

【讨论】:

    【解决方案3】:

    我在 Pycharm 中遇到了这个问题,但是当我尝试通过 cmd 运行我的 py 文件时,它可以工作。所以我认为这是因为 Pycharm 找不到 certifi 的目录。

    解决这个问题的一个简单方法是通过Setting-> Projector Interpreter -> +在Pycharm中安装certifi来搜索certifi并安装它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-15
      • 2023-03-22
      • 2012-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多