一说应添加"html.parser"
bs = BeautifulSoup(html, "html.parser")
亲测可用。
也有如下说法。
html5lib,lxml
注意:双引号" "千万不要写错。
BeautifulSoup文档代码中没有提示
https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/
但给出了这样一段。
推荐使用lxml作为解析器,因为效率更高. 在Python2.7.3之前的版本和Python3中3.2.2之前的版本,必须安装lxml或html5lib, 因为那些Python版本的标准库中内置的HTML解析方法不够稳定.
提示: 如果一段HTML或XML文档格式不正确的话,那么在不同的解析器中返回的结果可能是不一样的,查看 解析器之间的区别 了解更多细节
解析器 | 使用方法 | 优势 | 劣势 |
---|---|---|---|
Python标准库 | BeautifulSoup(markup, "html.parser") |
|
|
lxml HTML 解析器 | BeautifulSoup(markup, "lxml") |
|
|
lxml XML 解析器 |
|
|
|
html5lib | BeautifulSoup(markup, "html5lib") |
|
|