gpt4 book ai didi

xpath - 带有 type=html 和 html 实体的 xml 的 scrapy xpath 解决方案

转载 作者:行者123 更新时间:2023-12-03 16:11:33 25 4
gpt4 key购买 nike

我正在抓取一个原子提要(xml)。其中一个标签说:

<content type="html">
&lt;p&gt Some text and stuff &lt;/p&gt
</content>

我还看到 img 和 a 标签的相同 html 实体。
是否有一个通用的 xpath 来查找 img 标签或 p 标签,如下所示:
//content/p  or //content/img/@src

但显然这不适用于这些 html 实体。或者也许是其他带有scrapy的解决方案?

最佳答案

我认为您需要提取 content text 元素,对于每个元素,使用 lxml.html 解析 HTML 内容

import lxml.etree
import lxml.html

xmlfeed = lxml.etree.fromstring(xmlfeedstring)
for content in xmlfeed.xpath('//content[@type="html"]/text()'):

htmlcontent = lxml.html.fragment_fromstring(content)
paragraphs = htmlcontent.xpath('//p')
image_urls = htmlcontent.xpath('//img/@src')

Parsing HTML fragments来自 lxml 文档。

关于xpath - 带有 type=html 和 html 实体的 xml 的 scrapy xpath 解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19114600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com