Как избавиться от предупреждения пользователя BeautifulSoup?
48689 просмотра
3 ответа
После того, как я установил BeautifulSoup, всякий раз, когда я запускаю свой Python в cmd, появляется это предупреждение.
D:\Application\python\lib\site-packages\beautifulsoup4-4.4.1-py3.4.egg\bs4\__init__.py:166:
UserWarning: No parser was explicitly specified, so I'm using the best
available HTML parser for this system ("html.parser"). This usually isn't a
problem, but if you run this code on another system, or in a different
virtual environment, it may use a different parser and behave differently.
To get rid of this warning, change this:
BeautifulSoup([your markup])
to this:
BeautifulSoup([your markup], "html.parser")
У меня нет идеала, почему это выходит и как это решить.
Автор: jellyfishhuang Источник Размещён: 12.11.2019 09:27Ответы (3)
77 плюса
Решение вашей проблемы четко указано в сообщении об ошибке. Код, подобный приведенному ниже, не определяет XML / HTML / и т. Д. синтаксический анализатор.
BeautifulSoup( ... )
Чтобы исправить ошибку, вам нужно указать, какой парсер вы хотите использовать, например:
BeautifulSoup( ..., "html.parser" )
Вы также можете установить сторонний парсер, если хотите.
Автор: Ethan Bierlein Размещён: 04.11.2015 12:1413 плюса
Документация рекомендует вам установить и использовать lxml для скорости.
BeautifulSoup(html, "lxml")
Если вы используете версию Python 2 более ранней, чем 2.7.3, или версию Python 3 более ранней, чем 3.2.2, важно, чтобы вы установили lxml или html5lib - встроенный анализатор HTML Python просто не очень хорош в старых версии.
Установка парсера LXML
На Ubuntu (Debian)
apt-get install python-lxml
Fedora (на основе RHEL)
dnf install python-lxml
Использование PIP
pip install lxml
3 плюса
Для парсера HTML вам нужно установить html5lib, запустите:
pip install html5lib
затем добавьте html5lib в метод BeautifulSoup:
htmlDoc = bs4.BeautifulSoup(req1.text, 'html5lib')
print(htmlDoc)
Автор: Wilson Wu
Размещён: 06.09.2018 03:03
Вопросы из категории :
- python Обработка XML в Python
- python Как я могу использовать Python itertools.groupby ()?
- python Python: На какой ОС я работаю?
- python Как я могу создать непосредственно исполняемое кроссплатформенное приложение с графическим интерфейсом на Python?
- python Вызов функции модуля с использованием его имени (строки)
- python Звук Питона («Колокол»)
- beautifulsoup Изменение значения элемента с помощью BeautifulSoup возвращает пустой элемент
- beautifulsoup получить ссылки с веб-страницы, используя python и BeautifulSoup
- beautifulsoup BeautifulSoup Grab Видимый текст веб-страницы
- beautifulsoup Возможно ли, чтобы BeautifulSoup работал без учета регистра?
- beautifulsoup Извлечение значения атрибута с BeautifulSoup
- beautifulsoup BeautifulSoup: просто попасть внутрь тега, независимо от того, сколько в нем тегов
- user-warning Как избавиться от предупреждения пользователя BeautifulSoup?
- user-warning Python 2.7 Openpyxl UserWarning
- user-warning ODE dopri5 python второго порядка UserWarning: больше nmax
- user-warning Python bs4 module
- user-warning userWarning pymc3: что означает репараметризация?
- user-warning UserWarning: логический ключ серии будет переиндексирован в соответствии с индексом DataFrame