You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python虚拟环境与包依赖问题:VSCode中模块找不到报错求助

解决VSCode虚拟环境中ModuleNotFoundError的问题

问题场景

在VSCode中使用Python开发,已创建.venv虚拟环境并安装bs4、requests等包,且选择了该虚拟环境的解释器,但运行代码时仍提示ModuleNotFoundError: No module named 'bs4'。全局安装包后,即使选择.venv解释器也能正常运行,手动指定解释器路径、重装包均无效,且确认包存在于.venv文件夹中。

解决方案

  • 检查终端是否激活虚拟环境
    VSCode终端可能未自动激活虚拟环境,即使已选择对应解释器。查看终端开头是否有(.venv)标识,无则手动激活:
    Windows:.venv\Scripts\activate
    macOS/Linux:source .venv/bin/activate
    激活后执行pip list确认bs4、requests存在,再重新运行代码。

  • 绑定虚拟环境到运行配置
    打开运行和调试面板(Ctrl+Shift+D),创建launch.json文件,确保配置指向虚拟环境解释器:

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Python: 当前文件",
                "type": "python",
                "request": "launch",
                "program": "${file}",
                "console": "integratedTerminal",
                "pythonPath": "${workspaceFolder}/.venv/Scripts/python.exe" // macOS/Linux替换为.venv/bin/python
            }
        ]
    }
    

    保存后重新运行代码。

  • 清除VSCode Python缓存
    按Ctrl+Shift+P打开命令面板,执行Python: Clear Workspace Interpreter Cache,重新选择虚拟环境解释器后运行代码。

  • 确认pip指向虚拟环境
    激活虚拟环境后,执行where pip(Windows)或which pip(macOS/Linux),确认路径为.venv\Scripts\pip.exe(Windows)或.venv/bin/pip(macOS/Linux)。若不是,手动用虚拟环境的pip重装包:
    Windows:.venv\Scripts\pip install bs4 requests lxml
    macOS/Linux:.venv/bin/pip install bs4 requests lxml

  • 检查代码shebang行
    若代码开头有#!/usr/bin/env python类shebang,可能指向全局Python,直接删除该行,让VSCode使用选中的解释器运行。


用户代码

from bs4 import BeautifulSoup
import requests


html_text = requests.get('https://www.timesjobs.com/candidate/job-search.html?searchType=personalizedSearch&from=submit&txtKeywords=python&txtLocation=').text
soup = BeautifulSoup(html_text, 'lxml')
jobs = soup.find('li', class_ = 'clearfix job-bx wht-shd-bx')
for job in jobs:
    company_name = job.find('h3', class_ = 'joblist-comp-name').text.replace(' ','')
    skills = job.find('span', class_ = "srp-skills").text.replace(' ', '')

    published_date = job.find('span', class_ = 'sim-posted').span.text
    
    print(f'''
    Company Name: {company_name}
    Required Skills: {skills}
    ''')

    print('')

报错信息

Traceback (most recent call last):
  File "c:\Users\{my user}\Desktop\Code\webscraper.py", line 2, in <module>
    from bs4 import BeautifulSoup
ModuleNotFoundError: No module named 'bs4'

内容的提问来源于stack exchange,提问作者Fortifier574

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 06:55:20