我正在尝试使用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
。我该如何解决这个问题?
答案 0 :(得分:10)
错误是由soupparser.py
在安装版本4时尝试导入BeautifulSoup版本3引起的。版本4中的模块名称已从BeautifulSoup
更改为bs4
。
您可以在导入soupparser.py
之前将bs4
模块映射到sys.modules
中的BeautifulSoup
,以便soupparser
导入版本4:
import sys, bs4
sys.modules['BeautifulSoup'] = bs4
from lxml.html.soupparser import fromstring
答案 1 :(得分:0)
现在有一个与bs4一起使用的soupparser版本。它可以在这里找到:https://github.com/lxml/lxml/blob/master/src/lxml/html/soupparser.py
答案 2 :(得分:-1)
尝试添加:
from bs4 import BeautifulSoup
并确保您的系统安装的BeautifulSoup
版本正确。