为什么 Visual Studio Code 在命令行可以找到的 Conda 环境中找不到 requests.auth? [重复]

问题描述 投票:0回答:2

很快,我的一个运行得很好的脚本停止工作,抛出了一个

ModuleNotFoundError:没有名为“requests.auth”的模块

我不记得更改过脚本使用的 Conda 环境。

有一天一切正常,第二天就停止了。我不知道哪个参数改变了。

我尝试了多种途径来寻找解决方案,但没有成功。其中包括:

  • 设置新的、清理Conda环境,肯定已安装请求

  • 清除 Visual Studio Code 的缓存

  • 多次重启

奇怪的部分是这样的:当我在 shell 的交互式会话中运行以下命令时,它起作用并且我收到“响应 [200]”。

当我在 Visual Studio Code 中的 Jupyter Notebook 或 .py 文件中运行它时,我收到上面提到的 ModuleNotFoundError。从命令行执行文件也是如此。

以上所有测试都是在同一个 Conda 环境中进行的,该环境肯定安装了 Requests

另外:它确实可以在我有权访问的虚拟环境中工作,我的 Visual Studio Code 设置已同步到该虚拟环境。那么也许不是 Visual Studio Code,而是我的机器本地的东西?

import requests
from requests.auth import HTTPBasicAuth

basic = HTTPBasicAuth('user', 'pass')

requests.get('https://httpbin.org/basic-auth/user/pass', auth=basic)

部分规格:

  • 操作系统:Windows 10

  • Python:3.12.2

  • 请求:2.31.0

  • 康达:24.1.2

python visual-studio-code python-requests conda
2个回答
0
投票

通过快捷键“Ctrl+Shift+P”检查您的Python解释器,然后输入“Python:选择解释器”以选择正确的Python解释器。

如果不起作用,请尝试命令

pip install requests


0
投票

尤里卡!我终于找到答案了

正如预期的那样,这是一个相当局部的问题。该问题不仅限于我的机器,而且还特定于我的项目。我的项目目录中有一个子目录,我不假思索地命名为“requests”。给这个淘气的小罪魁祸首重新命名后,一切又开始运转了。

感谢@JRazor 为我指明了正确的方向

© www.soinside.com 2019 - 2024. All rights reserved.