gpt4 book ai didi

python - 无法让 Scrapy/Xpath 注意到 double

转载 作者:行者123 更新时间:2023-11-30 23:25:55 24 4
gpt4 key购买 nike

我正在尝试使用 scrapy 抓取一些诗歌,我有这样的文本:

Lorem ipsum dolor sit amet,<br>  
consectetuer adipiscing elit.<br>
<br>
Aenean commodo ligula eget dolor.<br>
Aenean massa

我用 scrapy 选择它的 xpath,如下所示:

In [1]: sel.xpath('//div[@class="box"]/text()').extract()
Out[1]:
[u'Lorem ipsum dolor sit amet,',
u'consectetuer adipiscing elit.',
u'Aenean commodo ligula eget dolor.',
u'Aenean massa',]

我怎样才能使它不忽略额外的 br ?

最佳答案

XPath 查询强制 Scrapy 不返回 <br>标签

Scrapy 忽略<br>标签,因为你告诉它这样做。您的 XPath 查询

//div[@class="box"]/text()

选择 //div[@class="box"] 的所有直接文本节点子节点,并且仅选择那些。任何其他节点类型都会被忽略,其中 <br>标签。

将搜索范围扩展到 <br>标签

如果您还想要 <br>要返回的标记,选择两个文本节点和 <br>代币:

(//div[@class="box"]/text() | //div[@class="box"]/br)

现在,循环所有结果。如果您遇到文本节点,则返回其内容,对于 ( <br> ) 标记返回换行符。

关于python - 无法让 Scrapy/Xpath 注意到 double <br>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22778538/

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