Zainstalowałem BeautifulSoup za pomocą easy_install i próbuję uruchomić następujący skrypt
from BeautifulSoup import BeautifulSoup
import re
doc = ['<html><head><title>Page title</title></head>',
'<body><p id="firstpara" align="center">This is paragraph <b>one</b>.',
'<p id="secondpara" align="blah">This is paragraph <b>two</b>.',
'</html>']
soup = BeautifulSoup(''.join(doc))
print soup.prettify()
Ale nie wiem, dlaczego tak się dzieje
Traceback (most recent call last):
File "C:\Python27\reading and writing xml file from web1.py", line 49, in <module>
from BeautifulSoup import BeautifulSoup
ImportError: No module named BeautifulSoup
Czy mógłbyś mi pomóc. Dzięki
python
beautifulsoup
Muhammad Imran
źródło
źródło
easy_install
używanie Pythona2.7 lub wbudowanej wersji Pythona, która była dostarczana z dowolnym systemem operacyjnym, którego używasz? Jeśli nie podałeś wersji 2.7, spróbuj zrobić Python2,4 lub Python2.6Odpowiedzi:
Spróbuj tego
from bs4 import BeautifulSoup
Może to być problem z Beautiful Soup w wersji 4 i dniami beta. Właśnie przeczytałem to ze strony głównej.
źródło
Na Ubuntu 14.04 zainstalowałem go z apt-get i działało dobrze:
sudo apt-get install python-beautifulsoup
Następnie po prostu wykonaj:
from BeautifulSoup import BeautifulSoup
źródło
C:\Python27
ścieżkę w jego śledzeniu wstecznym). Ta odpowiedź jest dla niego bezużyteczna.Spróbuj tego, mój działał w ten sposób. Aby uzyskać dane tagu, po prostu zastąp „a” odpowiednim tagiem.
from bs4 import BeautifulSoup as bs import urllib url="http://currentaffairs.gktoday.in/month/current-affairs-january-2015" soup = bs(urllib.urlopen(url)) for link in soup.findAll('a'): print link.string
źródło
możesz zaimportować bs4 zamiast BeautifulSoup. Ponieważ bs4 jest modułem wbudowanym, nie jest wymagana żadna dodatkowa instalacja.
from bs4 import BeautifulSoup import re doc = ['<html><head><title>Page title</title></head>', '<body><p id="firstpara" align="center">This is paragraph <b>one</b>.', '<p id="secondpara" align="blah">This is paragraph <b>two</b>.', '</html>'] soup = BeautifulSoup(''.join(doc)) print soup.prettify()
Jeśli chcesz złożyć wniosek, skorzystaj z modułu zgłoszeń. Żądanie korzysta
urllib
,requests
modułów. ale osobiście polecam używanierequests
module zamiasturllib
instalacja modułu do użycia:
Oto jak używać modułu żądań:
import requests as rq res = rq.get('http://www.example.com') print(res.content) print(res.status_code)
źródło
bs4
nie jest modułem wbudowanym.Najpierw zainstaluj piękną zupę w wersji 4. wpisz polecenie w oknie terminala:
następnie zaimportuj bibliotekę BeutifulSoup
źródło
jeśli masz dwie wersje Pythona, może moja sytuacja mogłaby ci pomóc
to jest moja sytuacja
1-> mac osx
2-> Mam dwie wersje Pythona, (1) domyślna wersja systemu 2.7 (2) ręcznie zainstalowana wersja 3.6
3-> Zainstalowałem beautifulsoup4 z
sudo pip install beautifulsoup4
4-> uruchamiam plik Pythona z rozszerzeniem
python3 /XXX/XX/XX.py
więc ta sytuacja 3 i 4 są kluczową częścią, zainstalowałem beautifulsoup4 z "pip", ale ten moduł został zainstalowany dla Pythona werison 2.7 i uruchamiam plik Pythona z "python3". więc powinieneś zainstalować beautifulsoup4 dla Pythona 3.6;
za pomocą
sudo pip3 install beautifulsoup4
możesz zainstalować moduł dla Pythona 3.6źródło
jeśli zainstalowałeś to w ten sposób (jeśli nie, instalacja w ten sposób):
a jeśli użyłeś tego kodu (jeśli nie, użyj tego kodu):
from bs4 import BeautifulSoup
jeśli używasz systemu Windows, sprawdź, czy istnieją moduły, może zapisać inną ścieżkę swojego modułu
źródło
Miałem ten sam problem z zaćmieniem w Windows 10.
Zainstalowałem go jak polecam przez okno poleceń Windows (cmd) z:
C:\Users\NAMEOFUSER\AppData\Local\Programs\Python\beautifulsoup4-4.8.2\setup.py install
BeautifulSoup został zainstalowany w taki sposób w moim katalogu Pythona:
C:\Users\NAMEOFUSE\AppData\Local\Programs\Python\Python38\Lib\site-packages\beautifulsoup4-4.8.2-py3.8.egg
Po ręcznym skopiowaniu folderów bs4 i EGG-INFO do folderu site-packages wszystko zaczęło działać, również przykład:
from bs4 import BeautifulSoup html = """ <html> <body> <p> Ich bin ein Absatz!</p> </body> </html> """ print(html) soup = BeautifulSoup(html, 'html.parser') print(soup.find_all("p"))
źródło