我正在尝试使用 beautifulsoup
兼容的 lxml
但它给我一个错误:
from lxml.html.soupparser import fromstring
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.7/site-packages/lxml/html/soupparser.py", line 7, in <module>
from BeautifulSoup import \
ImportError: No module named BeautifulSoup
我安装了 bs4
。我该如何解决这个问题?
最佳答案
该错误是由于 soupparser.py
在您安装了第 4 版时尝试导入第 3 版 BeautifulSoup 引起的。模块名称在版本 4 中从 BeautifulSoup
更改为 bs4
。
您可以通过将 bs4
模块映射到 sys.modules
中的 BeautifulSoup
来欺骗 soupparser.py
导入版本 4。在导入 soupparser
之前:
import sys, bs4
sys.modules['BeautifulSoup'] = bs4
from lxml.html.soupparser import fromstring
关于python - 由于 bs4 vs BeautifulSoup 导致导入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14042023/