bs4.FeatureNotFound: Не удалось найти конструктор дерева с запрошенными функциями: html5lib
Я получил эту ошибку при запуске моего кода Python:
bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: html5lib. Do you need to install a parser library?
Поэтому я искал в Интернете и читал это
Я проверил мои установленные пакеты, и html5lib, и шесть, похоже, являются последней версией.
beautifulsoup4 (4.6.0)
html5lib (1.0.1)
pip (9.0.1)
setuptools (28.8.0)
six (1.11.0)
webencodings (0.5.1)
Интересно, в чем здесь проблема?
*Контекст:
import urllib.request
from bs4 import BeautifulSoup
url0 = 'http://py4e-data.dr-chuck.net/known_by_Cruz.html'
url = url0
name = list()
for i in range(0,7):
html = urllib.request.urlopen(url).read()
soup = BeautifulSoup(html,"html5lib")
....
Когда я запустил точно такой же код в ноутбуке Jupyter, он запустился без проблем.
2 ответа
Вы пытаетесь заменить "htmllib" на "html.parser"
Например:
soup = BeautifulSoup(html,"html5lib") **->** soup = BeautifulSoup(data, "html.parser")
Попробуйте использовать любой из следующих вариантов:
HTML-парсер Python
soup_object= BeautifulSoup(markup,"html.parser")
C-зависимый парсер
pip install lxml soup_object= BeautifulSoup(markup,'lxml')
или
pip install html5lib soup_object= BeautifulSoup(markup,'html5lib')