Reputation: 18395
When I updated my packages I have this new error:
class TreeBuilderForHtml5lib(html5lib.treebuilders._base.TreeBuilder):
AttributeError: 'module' object has no attribute '_base'
I tried to update beautifulsoup
, with no more result. How can I fix that?
Upvotes: 68
Views: 45189
Reputation: 3372
I found trying to switch versions did not work for me. In the end, based on this issue I edited the relevant file at ~/.local/lib/python3.7/site-packages/bs4/builder/_html5lib.py
for my purposes.
Upvotes: 0
Reputation: 71
Just install html5lib
using this because if you install the normal way then you have to spider using python2.
sudo pip3 install html5lib==0.9999999
Upvotes: 0
Reputation: 1
This command solved the problem for me:
sudo pip install html5lib==0.9999999
Upvotes: 0
Reputation: 2411
The downgrade to html5lib 1.0b8 in @Bhavuk answer works but courses a version issue with bleach.
The solution for me was with a change of version of bleach to be compatible with the new version of html5lib
pip install --upgrade bs4
pip install --upgrade bleach==1.4.2
pip install --upgrade html5lib==1.0b8
Python version 3.5
Upvotes: 8
Reputation: 18395
edit nov, 2017: it seems this doesn't work any more
Finally found out, a search engine didn't throw anything but it's referenced on beautifulsoup's issue tracker: https://bugs.launchpad.net/beautifulsoup/+bug/1603299
it works back with html5lib v0.9999999
(7 nines)
"html5lib<=0.9999999"
Upvotes: 20
Reputation: 287
This is an issue with upstream package html5lib: https://bugs.launchpad.net/beautifulsoup/+bug/1603299 To fix, force downgrade to an older version:
pip install --upgrade html5lib==1.0b8
Upvotes: 27
Reputation: 31985
The same problem occurred on me. I don't know what you were trying to do, but it occurred on me when I tried to read XML file in pandas, using pd.read_html()
.
The problem is fixed by upgrading all of beautifulsoup4, html5lib, and lxml, like:
pip install bs4
pip install html5lib
pip install lxml
And restart your Python environment and now it is working.
Upvotes: 3
Reputation: 1542
I upgraded beautifulsoup4 and html5lib and it resolved the issue.
pip install --upgrade beautifulsoup4
pip install --upgrade html5lib
Upvotes: 117