Visual Studio 2019运行Python报unresolved import requests错误
问题说明
- Visual Studio 2019中运行Python脚本时抛出
unresolved import requests错误,提示requests库未安装,实际本地已经执行过该库的安装操作。 - 提问者日常主力开发语言为C#,不熟悉Python环境配置逻辑与VS2019下Python开发的环境匹配规则,无法定位问题诱因。
- 触发报错的测试脚本如下:
from pprint import pprint import requests URL = 'https://discosweb.esoc.esa.int' token = '<token>' response = requests.get( f'{URL}/api/objects', headers={ 'Authorization': f'Bearer {token}', 'DiscosWeb-Api-Version': '2', }, params={ 'filter': "eq(objectClass,Payload)>(reentry.epoch,epoch:'2020-01-01')", 'sort': '-reentry.epoch', }, ) doc = response.json() if response.ok: pprint(doc['data']) else: pprint(doc['errors'])
注:原脚本最后一行多写了一个右括号,直接运行会触发语法错误,已在上述代码块中修正。
根因说明
该问题是典型的Python解释器环境不匹配:之前安装requests时,把包装到了系统里另一个Python解释器的目录下,而VS2019当前项目绑定的Python解释器,和装包用的解释器不是同一个,自然识别不到已经安装的库。这个逻辑和C#项目中NuGet包安装到了其他项目、引用的DLL路径不匹配的报错逻辑完全一致。
解决步骤
- 确认当前项目绑定的Python解释器
打开VS2019右侧解决方案资源管理器,展开项目下的「Python环境」节点,当前加粗显示的环境就是项目实际使用的解释器。右键该环境选择「属性」,就能看到对应解释器的可执行文件完整路径。 - 给当前绑定的解释器安装requests库
方法一:直接在刚才的「Python环境」节点,右键当前使用的解释器,选择「安装Python包」,在弹出的搜索框输入requests后点击安装,等待安装完成后IDE的未导入提示会自动消失。
方法二:复制上一步查到的python.exe完整路径,打开命令提示符执行命令:"你的python.exe完整路径" -m pip install requests,执行完成后重启VS2019即可。 - 异常排查
如果安装完成后还是提示未找到库,打开对应Python解释器的「包」管理页,查看已安装列表中是否存在requests。如果不存在,大概率是网络、pip源配置问题导致包没有实际安装成功,重复上述安装步骤即可。
内容的提问来源于stack exchange,提问作者Alec
相关产品推荐
相关产品推荐

