lxml在bs4:python3中无法识别

2024-09-28 19:33:07 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,我在High Sierra上有一个mac,我正在尝试导入并使用api。这是一个python3api,使用bs4,特别是在bs4中使用lxml来解析网页。你知道吗

然而,我有一个问题让bs4认识到我的机器上安装了lxml。我已经使用pip安装了这两个程序,而且似乎都安装正确。我可以用“import bs4”和“import lxml”编写一个程序,它编译和运行都非常好。然而,无论我做什么,当我运行一个使用这个api的程序时,我总是得到以下错误。你知道吗

bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?

除此之外,当我运行以下代码时

import lxml
import bs4
print(bs4.builder.builder_registry.builders)

输出为

[<class 'bs4.builder._htmlparser.HTMLParserTreeBuilder'>]

没有列出lxml。你知道吗

我已经尝试了所有与此相关的堆栈溢出线程。我已经通过各种方法(pip、简易安装、手动安装、自制)卸载并重新安装了lxml和bs4。我已经从brew手动链接了lxml。还有其他我可能忘了的事情。但是我不能让它工作。你知道吗

有人有什么想法/以前有人经历过这个吗。可能我完全错过了一些小的或愚蠢的东西,因为我从来没有弄乱过bs4,但我不知道。你知道吗


Tags: pipimport程序机器youapi网页mac
1条回答
网友
1楼 · 发布于 2024-09-28 19:33:07

我不太清楚是什么原因,但我有一个类似的情况与烧瓶应用程序我正在工作。我通过在我需要的函数中本地导入bs4来解决这个问题。你知道吗

我的一个症状是,当我在模块顶部记录bs4.builder.builder_registry.builders时,日志最终显示了两个条目:首先是正确的构建器,然后只有HTML。你知道吗

相关问题 更多 >