Beautifulsoup,HTML5lib:模块对象没有属性_base



当我更新包时,我有一个新错误:

class TreeBuilderForHtml5lib(html5lib.treebuilders._base.TreeBuilder):
AttributeError: 'module' object has no attribute '_base'

我尝试更新beautifulsoup,但没有更多结果。我该怎么解决?

我升级了beautifulsoup4和html5lib,它解决了这个问题。

pip install --upgrade beautifulsoup4
pip install --upgrade html5lib

这是上游包html5lib的问题:https://bugs.launchpad.net/beautifulsoup/+bug/1603299要修复,请强制降级到旧版本:

pip安装-升级html5lib==1.0b8

编辑2017年11月:这似乎不再适用于

最终发现,一个搜索引擎没有抛出任何东西,但在beautifulsoup的问题跟踪器上引用了它:https://bugs.launchpad.net/beautifulsoup/+bug/1603299

它与html5lib v 0.9999999(7个9)一起工作

"html5lib<=0.9999999"

@Bhavuk答案中降级为html5lib 1.0b8有效,但使用漂白剂处理版本问题。

对我来说,解决方案是更换漂白剂的版本,以与新版本的html5lib 兼容

pip install --upgrade bs4
pip install --upgrade bleach==1.4.2
pip install --upgrade html5lib==1.0b8

Python 3.5版

同样的问题也发生在我身上。我不知道你想做什么,但当我尝试使用pd.read_html()读取Panda中的XML文件时,我也遇到了这个问题。

通过升级所有beautifulsoup4、html5lib和lxml,如,问题得到了解决

pip install bs4
pip install html5lib
pip install lxml

然后重新启动您的Python环境,现在它就可以工作了。

这个命令为我解决了问题:

 sudo pip install html5lib==0.9999999

只需使用此安装html5lib,因为如果以正常方式安装,则必须使用python2进行spider。

sudo pip3 install html5lib==0.9999999

我发现尝试切换版本对我来说不起作用。最后,基于这个问题,我在~/.local/lib/python3.7/site-packages/bs4/builder/_html5lib.py编辑了相关文件。

相关内容

  • 没有找到相关文章

最新更新