gpt4 book ai didi

python - 解析 Scrapy 中的相邻项

转载 作者:行者123 更新时间:2023-12-01 05:36:26 27 4
gpt4 key购买 nike

对 Scrapy 和 Python 还是有点陌生​​,所以希望得到一些指导。现在我正在尝试使用默认的 lxml 来解决这个问题,但我听说 BeautifulSoup 也很好。如果其他选择器能让这件事变得更容易,欢迎尝试。

我正在尝试抓取一个 html 对象,该对象有一些非常糟糕的结构。对象的详细信息没有嵌套在与其名称相同的结构中(没有 div 或任何东西)。我不知道如何提取节点,然后从相邻节点(而不是从嵌套元素)提取详细信息

其当前定义如下:

<!--first item-->
<h2 class="name">
<a href="link">Name goes here</a>
</h2>
<table>
<tbody>
<tr>
<th>ID</th>
<td><a href="link">123456</a></td>
</tr>
<tr>
<th>Description</th>
<td>More details here</td>
</tr>
<tr>
<th>Date</th>
<td>1/1/13</td>
</tr>
</tbody>
</table>
<!-- end first item -->

<hr>

<!--second item-->
<h2 class="name">
<a href="link">Name goes here</a>
</h2>
<table>
<tbody>
<tr>
<th>ID</th>
<td><a href="link">123456</a></td>
....

请注意 ID、描述和日期没有嵌套在与名称相同的 div 中。此外,第二个项目与第一个项目的名称和详细信息相邻。

对此的任何帮助表示赞赏。

最佳答案

您想要以下兄弟。如:

hxs.select("//th[text()='ID']/following-sibling::td[1]/a/@href")

关于python - 解析 Scrapy 中的相邻项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18928303/

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