2017-01-30 5 views
-1
import urllib 
from Beautifulsoup import* 

url = raw_input('Enter - ') 

html = urllib.urlopen(url).read() 
soup = Beautifulsoup(html) 

#Retrieve a list of the anchor tags 
#Each tag is like a dictionary of HTML attributes 

tags = soup('a') 

for tag in tags: 
    print tag.get('href', None) 

что код пытается запустить и ниже ответ я получаю от терминала:Я попытался запустить мою программу питона в Mac OS терминале, но получают обратную связь ниже после того, как я успешно установил Beautifulsoup4

MacBook-Pro-3:documents frankline$ python ./parsing_html.py 
Traceback (most recent call last): 
    File "./parsing_html.py", line 2, in <module> 
    from Beautifulsoup import* 
ImportError: No module named Beautifulsoup 

Однако я уже установили BeautifulSoup, как показано ниже:

MacBook-Pro-3:documents frankline$ sudo pip install Beautifulsoup4 
The directory '/Users/frankline/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 
The directory '/Users/frankline/Library/Caches/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 
Collecting Beautifulsoup4 
    Downloading beautifulsoup4-4.5.3-py2-none-any.whl (85kB) 
    100% |████████████████████████████████| 92kB 151kB/s 
Installing collected packages: Beautifulsoup4 
Successfully installed Beautifulsoup4-4.5.3 

Пожалуйста, помогите мне проверить ошибку

ответ

0

Ваш импорт неправильно, измените from Beautifulsoup import* на:

from bs4 import BeautifulSoup 

Вы можете искать документацию для Beautiful Soup 3. Если это так, вы должны знать, что Beautiful Soup 3 больше не разрабатывается, и что Beautiful Soup 4 рекомендуется для всех новых проектов. Если вы хотите узнать о различиях между Beautiful Soup 3 и Beautiful Soup 4, см. Porting code to BS4.

Read here для библиотеки BS4

+0

Я пробовал рекомендацию, но все еще получил следующий код ошибки. Traceback (самый последний вызов последнего): Файл «./parsing_html.py», строка 2, в от импорта BS4 BeautifulSoup ImportError: не может импортировать имя BeautifulSoup – user3741351

+0

@ user3741351 Вы уверены, что вы установили его в нужном месте? есть ли у вас несколько версий python на вашем компьютере? –

+0

есть. есть bot python 2 и python 3. Когда я его пробую в python3, он дает мне следующую ошибку: MacBook-Pro-3: документы frankline $ python3 parsing_html.py Файл «parsing_html.py», строка 15 print tag.get ('href', None) ^ СинтаксисError: недействительный синтаксис – user3741351

0

Пожалуйста, прочтите Document:

from bs4 import BeautifulSoup 

soup = BeautifulSoup(open("index.html")) 

soup = BeautifulSoup("<html>data</html>") 
0

Всякий раз, когда вы столкнетесь с ImportError, первый пожалуйста, попробуйте импортировать в питона консоли первым.

Pls использует этот оператор импорта для использования BeautifulSoup4.

from bs4 import BeautifulSoup