ImportError: No Module Named bs4 (BeautifulSoup)

141

Saya bekerja dengan Python dan menggunakan Flask. Ketika saya menjalankan file Python utama saya di komputer saya, itu bekerja dengan sempurna, tapi ketika saya mengaktifkan venv dan menjalankan file Flask Python di terminal, dikatakan bahwa file Python utama saya memiliki "No Module Named bs4." Setiap komentar atau saran sangat dihargai.

harryt
sumber
3
... apakah Anda menginstal bs4 di virtualenv?
Colin Dunklau
1
tidak, saya menjalankan ubuntu dan menggunakan "easy_install beautifulsoup4"
harryt

Jawaban:

220

Aktifkan virtualenv, lalu instal BeautifulSoup4:

$ pip install BeautifulSoup4

Saat Anda menginstal bs4dengan easy_install, Anda menginstalnya di seluruh sistem. Jadi python sistem Anda dapat mengimpornya, tetapi tidak python virtualenv Anda. Jika Anda tidak perlu bs4menginstal di jalur python sistem Anda, hapus instalannya dan simpan di virtualenv Anda.

Untuk informasi lebih lanjut tentang virtualenvs, baca ini

Balthazar Rouberol
sumber
4
Bayangkan (sebagai contoh) bahwa Anda sedang mengerjakan proyek yang membutuhkan versi modul tertentu. Anda mungkin juga sedang mengerjakan proyek lain, memerlukan versi berbeda dari modul ini. Jika setiap proyek terletak di virtualenvs, Anda akan memiliki dua lingkungan python yang benar-benar independen, daripada memiliki lingkungan sistem python dengan dua versi dari modul yang sama. Jaga kebersihan sistem Anda. Bekerja di virtualenvs.
Balthazar Rouberol
1
Saya tidak dapat menginstal, mendapatkan kesalahan locale.Error: unsupported locale settingApakah Anda punya ide?
zukijuki
Saya tidak dapat benar-benar menebak tanpa
pelacakan balik
Juga ingat bahwa jika Anda menggunakan venv, Anda harus menggunakan biner python dari venv itu . /usr/bin/python(di Mac OS) salah; seharusnya<your path to your venv>/bin/python
blamblambunny
Saya harus keluar () Python sehingga instalasi PIP akan berfungsi :)
Eoin
56

Untuk python2.x :

sudo pip install BeautifulSoup4

Untuk python3 :

sudo apt-get install python3-bs4
SparkAndShine
sumber
3
Situs resmi crummy.comgagal memberikan python3-bs4nama paket.
Suraj
2
untuk python 3 juga sudo pip install BeautifulSoup4bekerja
ishandutta2007
13

Hanya menandai jawaban Balthazar. Lari

pip install BeautifulSoup4

tidak bekerja untuk saya. Sebagai gantinya gunakan

pip install beautifulsoup4
Airswoop 1
sumber
7
pip3 install BeautifulSoup4

Coba ini. Ini bekerja untuk saya. Alasannya dijelaskan dengan baik di sini ..

Wimukthi Rajapaksha
sumber
5

Jika Anda menggunakan Anaconda untuk manajemen paket, berikut ini yang harus dilakukan:

conda install -c anaconda beautifulsoup4

Arnab Biswas
sumber
1
Opsi "-c anaconda" adalah defaultnya, jadi "conda install beautifulsoup4" melakukan hal yang sama dan lebih mudah untuk diingat :-)
PatrickT
5

Saya akan menyarankan Anda untuk menghapus pustaka bs4 dengan menggunakan perintah ini:

pip uninstall bs4

dan kemudian instal menggunakan perintah ini:

sudo apt-get install python3-bs4

Saya menghadapi masalah yang sama di Linux Ubuntu saya ketika saya menggunakan perintah berikut untuk menginstal pustaka bs4:

pip install bs4

Shashank Rawat
sumber
5

Jika Anda menggunakan Pycharm , buka preferences - project interpreter - install bs4.

Jika Anda mencoba menginstal BeautifulSoup , itu masih akan menunjukkan bahwa tidak ada modul bernama bs4.

Alice
sumber
4

Coba ini:

sudo python3 -m pip install bs4
Rayid Ali
sumber
2

pip install --user BeautifulSoup4

Manoj Kumar
sumber
2

Saya melakukan apa yang dikatakan @ rayid-ali, kecuali saya menggunakan mesin Windows 10 jadi saya meninggalkan sudo. Artinya, saya melakukan yang berikut:

python3 -m pip install bs4

dan itu bekerja seperti buah pepik. Bekerja seperti jimat.

23r0c001
sumber
1
pip3.7 install bs4

Coba ini. Ia bekerja dengan python 3.7

Franck Herve
sumber
0

Cara termudah adalah menggunakan easy_install.

easy_install bs4 

Ini akan berfungsi jika pip gagal.

puma-lima
sumber
0

Banyak tutorial / referensi ditulis untuk Python 2 dan memberi tahu Anda untuk menggunakan pip install somename. Jika Anda menggunakan Python 3, Anda ingin mengubahnya menjadi pip3 install somename.

Clarius
sumber
0

Anda mungkin ingin mencoba menginstal bs4 dengan

pip install --ignore-installed BeautifulSoup4

jika metode di atas tidak berhasil untuk Anda.

Ediz
sumber
0

Coba instal ulang modul ATAU Coba instal dengan sup cantik dengan perintah di bawah ini

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

Tambahkan ke kueri asli: modules.py

help('modules')

$python modules.py

Ini mencantumkan bahwa modul bs4 sudah diinstal.

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

Solusi yang tepat adalah:

pip install --upgrade bs4

Harus menyelesaikan masalah.

Tidak hanya itu, itu juga akan menunjukkan kesalahan yang sama untuk modul lain. Jadi Anda harus mengeluarkan perintah pip dengan cara yang sama seperti di atas untuk modul yang salah tersebut.

Biddut Mitra
sumber
0

Jika Anda berada di belakang proxy perusahaan kemudian coba gunakan perintah berikut

pip install --proxy = http: //www-YOUR_PROXY_URL.com: PROXY_PORT BeautifulSoup4

Rohit
sumber