Kev*_*vin 6 lxml beautifulsoup python-3.x anaconda
我正在尝试使用 beautifulsoup4 来解析一系列用 XHTML 编写的网页。我假设为了获得最佳结果,我应该与 xml 解析器配对,据我所知,beautifulsoup 支持的唯一解析器是 lxml。
但是,当我尝试按照 beautifuloup 文档运行以下命令时:
import requests
from bs4 import BeautifulSoup 
r = requests.get(‘hereiswhereiputmyurl’)
soup = BeautifulSoup(r.content, ‘xml’)
它导致以下错误:
FeatureNotFound: Couldn't find a tree builder with the features you    
requested: xml. Do you need to install a parser library?
这让我疯狂。我找到了其他两个发布相同问题的用户的记录
在这里 bs4.FeatureNotFound:找不到具有您请求的功能的树构建器:lxml。你需要安装解析器库吗?
我使用这篇文章(请参阅此行正下方的链接)重新安装和更新 lxml 并更新了漂亮的汤,但我仍然收到错误消息。 在 Windows 8.1 上安装 lxml、libxml2、libxslt
Beautifulsoup 正在工作,因为我运行了以下代码,它向我展示了它通常的标记语言墙汤 = BeautifulSoup(r.content, 'html.parser')
这是我的规格 Windows 8.1 Python 3.5.2 我使用 Anaconda 3 中的 spyder ide 来运行我的代码(诚然,我不太了解)
我确信初学者会这样做,因为正如我之前所说,我几乎没有编程经验。
我该如何解决这个问题,或者如果它是一个已知的错误,你们会建议我单独使用 lxml 来抓取数据。
我认为问题是r.content。通常它给出响应的原始内容,不一定是 HTML 页面,它可以是 json 等。
\n尝试喂给r.textsoup。  
soup = BeautifulSoup(r.text, \xe2\x80\x98lxml\xe2\x80\x99)\n更好的:
\n\nr.encoding='utf-8'\n然后
\n\npage = r.text\n\nsoup = BeautifulSoup(page, 'lxml')\n如果你要解析 xml,你可以使用'lxml-xml'as 解析器。
| 归档时间: | 
 | 
| 查看次数: | 7025 次 | 
| 最近记录: |