ImportError: ningún módulo llamado BS4 (BeautifulSoup)

138

Estoy trabajando en Python y usando Flask. Cuando ejecuto mi archivo Python principal en mi computadora, funciona perfectamente, pero cuando activo venv y ejecuto el archivo Python Flask en la terminal, dice que mi archivo Python principal tiene "No Module Named bs4". Cualquier comentario o consejo es muy apreciado.

harryt
fuente
3
... ¿instaló bs4 en virtualenv?
Colin Dunklau
1
no, estoy ejecutando ubuntu y usé "easy_install beautifulsoup4"
harryt

Respuestas:

215

Active virtualenv y luego instale BeautifulSoup4:

$ pip install BeautifulSoup4

Cuando instaló bs4con easy_install, lo instaló en todo el sistema. Por lo tanto, su sistema Python puede importarlo, pero no su Python virtualenv. Si no necesita bs4estar instalado en la ruta de Python de su sistema, desinstálelo y manténgalo en su virtualenv.

Para obtener más información sobre virtualenvs, lea esto

Balthazar Rouberol
fuente
44
Imagine (por ejemplo) que está trabajando en un proyecto que requiere una versión específica de un módulo. También puede estar trabajando en un proyecto diferente, que requiere una versión diferente de este módulo. Si cada proyecto se encuentra en virtualenvs, tendrá dos entornos python absolutamente independientes, en lugar de tener un entorno python del sistema con dos versiones del mismo módulo. Mantenga limpio su entorno de sistema. Trabajar en virtualenvs.
Balthazar Rouberol
1
No puedo instalar, obtengo un error locale.Error: unsupported locale setting¿Tienes alguna idea?
coderInrRain
Realmente no puedo adivinar sin un rastreo, pero eche un vistazo a stackoverflow.com/questions/14547631/…
Balthazar Rouberol
También recuerde que si está usando un venv, debe usar el binario python de ese venv . /usr/bin/python(en un Mac OS) está mal; que debería ser<your path to your venv>/bin/python
joemadeus
Tuve que salir de Python () para que la instalación de PIP funcionara :)
Eoin
54

Para python2.x :

sudo pip install BeautifulSoup4

Para python3 :

sudo apt-get install python3-bs4
Chispa y brillo
fuente
3
El sitio oficial crummy.comno pudo proporcionar el python3-bs4nombre del paquete.
Suraj
1
para python 3 también sudo pip install BeautifulSoup4funciona
ishandutta2007
13

Solo etiquetando la respuesta de Balthazar. Corriendo

pip install BeautifulSoup4

no funciono para mi En lugar de usar

pip install beautifulsoup4
Airswoop1
fuente
7
pip3 install BeautifulSoup4

Prueba esto. Esto funciona para mi. La razón está bien explicada aquí ...

Wimukthi Rajapaksha
fuente
5

Si está utilizando Anaconda para la gestión de paquetes, debe hacer lo siguiente:

conda install -c anaconda beautifulsoup4

Arnab Biswas
fuente
1
La opción "-c anaconda" es la predeterminada, por lo que "conda install beautifulsoup4" hace lo mismo y es más fácil de memorizar :-)
PatrickT
5

Si usa Pycharm , vaya a preferences - project interpreter - install bs4.

Si intenta instalar BeautifulSoup , seguirá mostrando que no se nombra ningún módulo bs4.

Alicia
fuente
4

Le aconsejaré que desinstale la biblioteca bs4 utilizando este comando:

pip desinstalar bs4

y luego instálelo usando este comando:

sudo apt-get install python3-bs4

Estaba enfrentando el mismo problema en mi Ubuntu de Linux cuando utilicé el siguiente comando para instalar la biblioteca bs4:

pip install bs4

Shashank Rawat
fuente
3

Prueba esto:

sudo python3 -m pip install bs4
Rayid Ali
fuente
2

pip install --user BeautifulSoup4

Manoj Kumar
fuente
1
pip3.7 install bs4

Prueba esto. Funciona con python 3.7

Franck Herve
fuente
1

Hice lo que @ rayid-ali dijo, excepto que estoy en una máquina con Windows 10, así que dejé el sudo. Es decir, hice lo siguiente:

python3 -m pip install bs4

y funcionó como un pycharm. Funcionó como un encanto de todos modos.

23r0c001
fuente
0

Lo más fácil es usar easy_install.

easy_install bs4 

Funcionará si pip falla.

puma-lima
fuente
0

Se escribieron muchos tutoriales / referencias para Python 2 y le dicen que use el nombre de instalación pip. Si está utilizando Python 3, desea cambiarlo a pip3 install somename.

Clarius
fuente
0

Es posible que desee intentar instalar bs4 con

pip install --ignore-installed BeautifulSoup4

si los métodos anteriores no funcionaron para ti.

Ediz Emektas
fuente
0

Intente reinstalar el módulo O intente instalar con una hermosa sopa con el siguiente comando

pip install --ignore-installed BeautifulSoup4
Harsith Priyan Sivanandham
fuente
0

Anexo a la consulta original: modules.py

help('modules')

$python modules.py

Enumera ese módulo bs4 ya instalado.

_codecs_kr          blinker             json                six
_codecs_tw          brotli              kaitaistruct        smtpd
_collections        bs4                 keyword             smtplib
_collections_abc    builtins            ldap3               sndhdr
_compat_pickle      bz2                 lib2to3             socket

La solución adecuada es:

pip install --upgrade bs4

Debería resolver el problema.

No solo eso, también mostrará el mismo error para otros módulos. Por lo tanto, debe emitir el comando pip de la misma manera que anteriormente para esos módulos con errores.

Biddut Mitra
fuente