2015-02-20 42 views
7

Próbuję napisać prosty, lokalny skrypt w języku Python, aby wykonać pewne przetwarzanie html. Zainstalowałem beautifulsoup4 i importowanych go za pomocąBłąd importu BeautifulSoup

from bs4 import BeautifulSoup 

Ale pojawia się błąd:

Traceback (most recent call last): 
    File "scrape_descriptions.py", line 1, in <module> 
    from bs4 import BeautifulSoup 
ImportError: No module named 'bs4' 

próbowałam instalacji BS4 w niemal każdym względem. Pierwszy zrobiłem

sudo pip install BeautifulSoup4 

następnie Próbowałem pobierając odpowiednie pliki ze strony internetowej i działa

sudo python setup.py install 

i wreszcie próbowałem

sudo su 
easy_install BeautifulSoup4 

Wszystkie te działania wydają się być zakończona pomyślnie. Ale wciąż dostaję tego błędu. Przeszukałem inne posty, ale prawie wszystkie z nich to instrukcje instalacji, które już zrobiłem.

Wpisanie

pip freeze 

pokazuje, że BS4 jest zainstalowany, ale działa

$ python3 -i 
>>> help('modules') 

nie pojawi się do listy BS4.

Edit 1: Uruchomienie sudo pip3 zainstalować BeautifulSoup daje ten błąd:

Downloading/unpacking BeautifulSoup 
    Downloading BeautifulSoup-3.2.1.tar.gz 
    Running setup.py (path:/private/tmp/pip_build_root/BeautifulSoup/setup.py) egg_info for package BeautifulSoup 
    Traceback (most recent call last): 
     File "<string>", line 17, in <module> 
     File "/private/tmp/pip_build_root/BeautifulSoup/setup.py", line 22 
     print "Unit tests have failed!" 
            ^
    SyntaxError: invalid syntax 
    Complete output from command python setup.py egg_info: 
    Traceback (most recent call last): 

    File "<string>", line 17, in <module> 

    File "/private/tmp/pip_build_root/BeautifulSoup/setup.py", line 22 

    print "Unit tests have failed!" 

           ^

SyntaxError: invalid syntax 

---------------------------------------- 
Cleaning up... 
Command python setup.py egg_info failed with error code 1 in /private/tmp/pip_build_root/BeautifulSoup 
Storing debug log for failure in /Users/griff/.pip/pip.log 

Edit 2: rozwiązany! Powodem pip3 została braku został ponieważ używałem

sudo pip3 install BeautifulSoup 

zamiast

sudo pip3 install BeautifulSoup4 

którym pracował. Dzięki!

+0

Jeśli masz zarówno Pythona 2 i 3, i pip zainstalowanych dla obu, ty może instalować w jednym i używać drugiego. Sprawdź, czy masz polecenia 'pip2' lub' pip3' i próbuj uruchomić 'python2' i zrób tam import. –

+0

Mam zarówno pip2, jak i pip3, ale mam tylko python3, a nie python2. – gmaster

+0

Uruchom 'pip3 install BeautifulSoup4', then. –

Odpowiedz

5

Rozwiązaniem jest:

sudo pip3 install BeautifulSoup4 
+0

świetne rozwiązanie @ ers81239 –

0

Spróbuj:

sudo pip install BeautifulSoup 

Następnie

from BeautifulSoup import BeautifulSoup 

Teraz można wywołać wszystkie funkcje z BeautifulSoup