【问题解决】python安装bs4后,仍然报错 ModuleNotFoundError: No module named ‘bs4‘

2023-05-16

问题

我这里是windows上使用出现的问题:

代码中使用了 from bs4 import BeautifulSoup

# 需要使用 BeautifulSoup,使用以下命令后提示要使用 BeautifulSoup4
pip install BeautifulSoup
# 安装 BeautifulSoup4
pip install BeautifulSoup4
# 执行py文件报错 ModuleNotFoundError: No module named 'bs4'
pip install bs4
# 仍然提示 ModuleNotFoundError: No module named 'bs4'

分析

使用 python3.7

  • pip install bs4Python37\Lib\site-packages 文件夹下只有 bs4-0.0.1-py3.7.egg-info ,没有 bs4 文件夹(安装过程中会有,但是安装完成后被删除了)。
  • 会同时安装 BeautifulSoup4,相当于执行 pip install BeautifulSoup4,生成了 beautifulsoup4-4.12.0.dist-info 文件夹,没有 BeautifulSoup4 文件夹。

使用 python3.8

  • pip install bs4Python38\Lib\site-packages 文件夹下只有 bs4-0.0.1-py3.8.egg-info ,没有 bs4 文件夹(安装过程中会有,但是安装完成后被删除了)。
  • 会同时安装 BeautifulSoup4,相当于执行 pip install BeautifulSoup4,生成了 beautifulsoup4-4.12.0.dist-info 文件夹,没有 BeautifulSoup4 文件夹。

使用 python3.9

  • pip install bs4 后生成 bs4bs4-0.0.1-py3.9.egg-infobeautifulsoup4-4.12.0.dist-info

在这里插入图片描述

python3.7、python3.8 为什么无法安装暂不清楚原因,不知道是不是不支持了。
至于众多文章提到的使用 pycharm 安装bs4就成功了,我尝试后仍然与上述分析结果一致,python3.7、python3.8 无法使用。


解决

  • 安装 python3.9,windows版本下载地址、python-3.9.13.exe,python-3.9.13-amd64.exe 【下载慢的可以用迅雷下载】
  • 环境变量添加 安装路径 xxx\Python39\xxx\Python39\Scripts
  • 变量上移到其他版本python的上面(变量会优先使用上面的)
  • 再次运行就不会报错了

其他问题

python3.9 的 pip 无法使用:

> pip -version
Fatal error in launcher: Unable to create process using '"d:\professional_software\python39\python.exe"  "D:\Professional_Software\Python\Python39\Scripts\pip.exe" --version': ???????????
# 安装更新pip,显示成功但无效
python -m ensurepip --upgrade

解决:
先删掉 D:\Professional_Software\Python\Python39\Scripts\pip.exe,再执行:

# 会重新安装 pip.exe、pip3.9.exe、pip3.exe 这三个
python -m pip install -U pip

验证pip是否可使用:

pip --version
pip list

“Fatal error in launcher: Unable to create process using”解决办法

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【问题解决】python安装bs4后,仍然报错 ModuleNotFoundError: No module named ‘bs4‘ 的相关文章

  • 如何查看Databricks中的所有数据库和表

    我想列出 Azure Databricks 中每个数据库中的所有表 所以我希望输出看起来像这样 Database Table name Database1 Table 1 Database1 Table 2 Database1 Table
  • 无法“安装”plpython3u - postgresql

    我正在尝试在 postgresql 中使用 python 语言 像这样的事情 create or replace function test a integer returns integer as if a 2 0 return even
  • 通过 Scrapy 抓取 Google Analytics

    我一直在尝试使用 Scrapy 从 Google Analytics 获取一些数据 尽管我是一个完全的 Python 新手 但我已经取得了一些进展 我现在可以通过 Scrapy 登录 Google Analytics 但我需要发出 AJAX
  • Django 管理员在模型编辑时间歇性返回 404

    我们使用 Django Admin 来维护导出到我们的一些站点的一些数据 有时 当单击标准更改列表视图来获取模型编辑表单而不是路由到正确的页面时 我们会得到 Django 404 页面 模板 它是偶尔发生的 我们可以通过重新加载三次来重现它
  • 将数据从 python pandas 数据框导出或写入 MS Access 表

    我正在尝试将数据从 python pandas 数据框导出到现有的 MS Access 表 我想用已更新的数据替换 MS Access 表 在 python 中 我尝试使用 pandas to sql 但收到错误消息 我觉得很奇怪 使用 p
  • 将 Matplotlib 误差线放置在不位于条形中心的位置

    我正在 Matplotlib 中生成带有错误栏的堆积条形图 不幸的是 某些层相对较小且数据多样 因此多个层的错误条可能重叠 从而使它们难以或无法读取 Example 有没有办法设置每个误差条的位置 即沿 x 轴移动它 以便重叠的线显示在彼此
  • 通过最小元素比较对 5 个元素进行排序

    我必须在 python 中使用元素之间的最小比较次数来建模对 5 个元素的列表进行排序的执行计划 除此之外 复杂性是无关紧要的 结果是一个对的列表 表示在另一时间对列表进行排序所需的比较 我知道有一种算法可以通过 7 次比较 总是在元素之间
  • Python - StatsModels、OLS 置信区间

    在 Statsmodels 中 我可以使用以下方法拟合我的模型 import statsmodels api as sm X np array 22000 13400 47600 7400 12000 32000 28000 31000 6
  • Flask 会话变量

    我正在用 Flask 编写一个小型网络应用程序 当两个用户 在同一网络下 尝试使用应用程序时 我遇到会话变量问题 这是代码 import os from flask import Flask request render template
  • PyUSB 1.0:NotImplementedError:此平台不支持或未实现操作

    我刚刚开始使用 pyusb 基本上我正在玩示例代码here https github com walac pyusb blob master docs tutorial rst 我使用的是 Windows 7 64 位 并从以下地址下载 z
  • 使用 on_bad_lines 将 pandas.read_csv 中的无效行写入文件

    我有一个 CSV 文件 我正在使用 Python 来解析该文件 我发现文件中的某些行具有不同的列数 001 Snow Jon 19801201 002 Crom Jake 19920103 003 Wise Frank 19880303 l
  • 以编程方式停止Python脚本的执行? [复制]

    这个问题在这里已经有答案了 是否可以使用命令在任意行停止执行 python 脚本 Like some code quit quit at this point some more code that s not executed sys e
  • OpenCV 无法从 MacBook Pro iSight 捕获

    几天后 我无法再从 opencv 应用程序内部打开我的 iSight 相机 cap cv2 VideoCapture 0 返回 并且cap isOpened 回报true 然而 cap grab 刚刚返回false 有任何想法吗 示例代码
  • Python 的“zip”内置函数的 Ruby 等价物是什么?

    Ruby 是否有与 Python 内置函数等效的东西zip功能 如果不是 做同样事情的简洁方法是什么 一些背景信息 当我试图找到一种干净的方法来进行涉及两个数组的检查时 出现了这个问题 如果我有zip 我可以写这样的东西 zip a b a
  • 如何使用Python创建历史时间线

    So I ve seen a few answers on here that helped a bit but my dataset is larger than the ones that have been answered prev
  • Pandas:merge_asof() 对多行求和/不重复

    我正在处理两个数据集 每个数据集具有不同的关联日期 我想合并它们 但因为日期不完全匹配 我相信merge asof 是最好的方法 然而 有两件事发生merge asof 不理想的 数字重复 数字丢失 以下代码是一个示例 df a pd Da
  • 每个 X 具有多个 Y 值的 Python 散点图

    我正在尝试使用 Python 创建一个散点图 其中包含两个 X 类别 cat1 cat2 每个类别都有多个 Y 值 如果每个 X 值的 Y 值的数量相同 我可以使用以下代码使其工作 import numpy as np import mat
  • 为字典中的一个键附加多个值[重复]

    这个问题在这里已经有答案了 我是 python 新手 我有每年的年份和值列表 我想要做的是检查字典中是否已存在该年份 如果存在 则将该值附加到特定键的值列表中 例如 我有一个年份列表 并且每年都有一个值 2010 2 2009 4 1989
  • Scrapy:如何使用元在方法之间传递项目

    我是 scrapy 和 python 的新手 我试图将 parse quotes 中的项目 item author 传递给下一个解析方法 parse bio 我尝试了 request meta 和 response meta 方法 如 sc
  • Python 类继承 - 诡异的动作

    我观察到类继承有一个奇怪的效果 对于我正在处理的项目 我正在创建一个类来充当另一个模块的类的包装器 我正在使用第 3 方 aeidon 模块 用于操作字幕文件 但问题可能不太具体 以下是您通常如何使用该模块 project aeidon P

随机推荐