gpt4 book ai didi

python-3.x - xpath 连接来自多个元素的文本 python

转载 作者:行者123 更新时间:2023-12-02 22:31:21 26 4
gpt4 key购买 nike

您好,我有来自该网站的一些 html 文件:https://www.oddsportal.com/soccer/argentina/superliga/results/

<td class="name table-participant">
<a href="/soccer/argentina/superliga/independiente-san-martin-tIuN5Umrd/">
<span class="bold">Independiente</span>
"- San Martin T."
</a>
</td>

<td class="name table-participant">
<a href="/soccer/argentina/superliga/lanus-huracan-xIDIe0Gr/">
"Lanus - "
<span class="bold">Huracan</span>
</a>
</td>

<td class="name table-participant">
<a href="/soccer/argentina/superliga/rosario-central-colon-santa-fe-Q1Ye9Jpr/">Rosario Central - Colon Santa FE</a>
</td>

我想选择并加入 a/text() 和 span/text() 以便看起来像这样:“Independiente - San Martin T”。正如您所看到的,“跨度”并不总是在同一个地方,有时会丢失(请参阅最后一个“td 类”)

我使用了这段代码:

('//td[@class="name table-participant"]/a/text() | span/text()').extract()

但它只返回 a/text()。你能帮我完成这项工作吗?谢谢

最佳答案

您尝试在没有范围的情况下搜索 span/text()。在这部分查询的开头添加 //,完全是:

('//td[@class="name table-participant"]/a/text() | //span/text()').extract()

但我强烈建议使用这个决定:

 ('//td[@class="name table-participant"]//*[self::a/ancestor::td or self::span]/text()').extract

仅从您选择的td范围获取跨度。

关于python-3.x - xpath 连接来自多个元素的文本 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53217233/

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