首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ModuleNotFoundError:没有名为'bs4‘的模块[BeautifulSoup]

ModuleNotFoundError:没有名为'bs4‘的模块[BeautifulSoup]
EN

Stack Overflow用户
提问于 2020-08-13 11:39:53
回答 3查看 6.2K关注 0票数 1

当我在Atom中收到以下错误消息时,我正试图使用BeautifulSoup运行一个简单的python文件。

ModuleNotFoundError:没有名为“bs4”的模块

我已经在我的Macbook终端中使用以下命令安装了BeautifulSoup。

代码语言:javascript
复制
$ pip3 install beautifulsoup4

我想指出的是,我已经安装了Python2.7.10和Python3.8.5。我查看了已安装的模块,只在python3的模块中看到“python3”,而在python中没有看到。

当我尝试将scrape.py放在Atom或PyCharm中时,两个文本编辑器都说模块不存在。任何帮助都将不胜感激,谢谢。

scrape.py

代码语言:javascript
复制
import requests
from bs4 import BeautifulSoup

溯源

代码语言:javascript
复制
Traceback (most recent call last):
  File "/Users/lyons/Documents/scrape/scrape.py", line 2, in <module>
    from bs4 import BeautifulSoup
ModuleNotFoundError: No module named 'bs4'
[Finished in 2.237s]
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-08-13 17:47:42

前面的任何一个答案都无法修复我的错误,但我找到的一个难看的解决方案就是将下面的代码添加到文件的开头。

代码语言:javascript
复制
import subprocess
import sys

def install(package):
    subprocess.check_call([sys.executable, "-m", "pip", "install", bs4])

from bs4 import BeautifulSoup
票数 0
EN

Stack Overflow用户

发布于 2022-02-02 22:52:23

如果有人在使用子进程(我的设置包括venv)时意外地遇到这个- bs4行为。对我有用的是对建议的解决方案进行了修订:

代码语言:javascript
复制
def install_bs4():
    subprocess.check_call([sys.executable, "-m", "pip", "install", "bs4"])

try:
    from bs4 import BeautifulSoup
except:
    install_bs4()
    from bs4 import BeautifulSoup
票数 1
EN

Stack Overflow用户

发布于 2020-08-13 11:47:57

如果您是在基于Unix的系统上,请尝试从root运行:

代码语言:javascript
复制
sudo pip3 install beautifulsoup4
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63394364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档