5

我正在尝试使用beautifulsoupcompatible 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安装了。我该如何解决这个问题?

4

3 回答 3

10

该错误是由于soupparser.py在安装了版本 4 时尝试导入 BeautifulSoup 版本 3 引起的。模块名称在版本 4 中从 更改BeautifulSoup为。bs4

您可以通过在导入之前将模块映射到in来欺骗soupparser.py导入版本 4 :bs4BeautifulSoupsys.modulessoupparser

import sys, bs4
sys.modules['BeautifulSoup'] = bs4

from lxml.html.soupparser import fromstring
于 2012-12-26T17:36:52.970 回答
0

现在有一个可以与 bs4 一起使用的 soupparser 版本。它在这里可用:https ://github.com/lxml/lxml/blob/master/src/lxml/html/soupparser.py

于 2015-09-02T11:59:37.693 回答
-1

尝试添加:

from bs4 import BeautifulSoup

并确保您BeautifulSoup安装了适合您系统的正确版本。

于 2012-12-26T14:47:18.567 回答