2015-02-20 19 views
7

Tôi đang cố gắng viết một tập lệnh python đơn giản, cục bộ để thực hiện phân tích cú pháp html. Tôi đã cài đặt beautifulsoup4 và nhập khẩu nó bằng cách sửLỗi nhập NiceSoup

from bs4 import BeautifulSoup 

Nhưng tôi nhận được lỗi:

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

Tôi đã thử cài đặt BS4 trong chỉ là về mọi phương diện. Đầu tiên tôi làm

sudo pip install BeautifulSoup4 

sau đó tôi đã cố gắng tải về các tập tin thực tế từ các trang web và chạy

sudo python setup.py install 

và cuối cùng tôi đã cố gắng

sudo su 
easy_install BeautifulSoup4 

Tất cả các hoạt động này dường như đã kết thúc thành công. Nhưng tôi vẫn nhận được lỗi này. Tôi đã scoured bài viết khác, nhưng khá nhiều tất cả trong số họ chỉ là hướng dẫn cài đặt, mà tôi đã làm.

pip freeze 

cho thấy BS4 được cài đặt nhưng chạy

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

không xuất hiện để liệt kê BS4.

Sửa 1: Chạy sudo PIP3 cài đặt BeautifulSoup cho lỗi này:

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 

Chỉnh sửa 2: Solved! Lý do PIP3 đã thất bại được vì tôi đã sử dụng

sudo pip3 install BeautifulSoup 

thay vì

sudo pip3 install BeautifulSoup4 

mà làm việc. Cảm ơn!

+0

Nếu bạn có cả python 2 và 3, và pip cài đặt cho cả hai, bạn có thể được cài đặt trong một và sử dụng khác. Kiểm tra xem bạn có lệnh 'pip2' hoặc' pip3' không, và thử chạy 'python2' và thực hiện việc nhập ở đó. –

+0

Tôi có cả pip2 và pip3, nhưng tôi chỉ có python3 chứ không phải python2. – gmaster

+0

Chạy 'pip3 install BeautifulSoup4', sau đó. –

Trả lời

5

Giải pháp là:

sudo pip3 install BeautifulSoup4 
+0

giải pháp tuyệt vời @ ers81239 –

0

Hãy thử:

sudo pip install BeautifulSoup 

Sau đó

from BeautifulSoup import BeautifulSoup 

Bạn bây giờ có thể gọi tất cả các chức năng từ BeautifulSoup