提问者:小点点

Python模块请求在anaconda提示符下工作,但不在windows 10命令行中工作


如果我尝试执行以下python代码

import requests
data = requests.get('https://www.bbc.com')

我收到了错误信息

raise SSLError("Can't connect to HTTPS URL because the SSL "
urllib3.exceptions.SSLError: Can't connect to HTTPS URL because the SSL module is not available.

在anaconda提示符中执行相同的python代码可以正常工作。所以我找到了这个链接:模块在Anaconda提示符下工作,但在Spyder中不工作

执行stackoverflow post中给出的命令,我得到路径:C:\Users\x1\Anaconda3\python。exe从windows 10命令行调用此路径并执行上述代码仍会引发错误。


共3个答案

匿名用户

  • 在管理模式下打开Anaconda提示符
  • 运行此命令conda install-c anaconda requests
  • 安装该软件包
  • 然后再次运行代码。现在应该可以了

匿名用户

我有一个类似的问题,运行一个python脚本作为一个计划的任务会引起这个错误(而运行脚本从Anaconda提示符或Spyder将按预期工作)。这似乎是一个权限问题。尝试以管理员身份启动Windows命令行(右键单击并以管理员身份运行)。它应该工作。

要将其作为计划任务来实现,请直接从任务中调用python并添加脚本作为第一个参数,而不是调用批处理文件,然后调用python,然后再调用脚本。

匿名用户

我在python3.8的虚拟环境中遇到了类似的问题(与requests模块相关的错误消息相同)。3windows 10虚拟机上,没有管理员权限。我的解决方案实际上是PATH环境变量,正如Paul Stevens在这里的回答中所述:请求(由SSLError引起(“由于SSL模块不可用,无法连接到HTTPS URL”)请求网站时出现错误。

所以我为我的用户添加了以下路径到环境变量PATH

>

  • 为我的用户打开环境变量(要访问环境变量,只需在windows搜索栏中键入环境变量

    选择PATH变量,然后单击编辑

    添加以下路径(替换

    打开一个新的命令窗口

    运行脚本

    然后它神奇地对我起作用了。

    顺便说一句,print(sys.executable)命令会在命令和anaconda提示符中显示相同的信息。