gpt4 book ai didi

用于爬行的 XPath 跟随 sibling 不返回 sibling

转载 作者:行者123 更新时间:2023-12-03 15:26:15 35 4
gpt4 key购买 nike

我正在尝试创建一个爬虫来从供应商网站中提取一些属性数据,我可以根据我们的内部属性数据库对其进行审核,并且是 import.io 的新手。我看了一堆视频,虽然我的语法似乎是正确的,但我的手动 xpath 覆盖没有返回属性值。我有以下示例 html 代码:

<table>
<tbody><tr class="oddRow">
<td class="label">&nbsp;Adhesive Type&lrm;</td><td>&nbsp;Epoxy&lrm;
</td>
</tr>
<tr>
<td class="label">&nbsp;Applications&lrm;</td><td>&nbsp;Hard Disk Drive Component Assembly&lrm;
</td>
</tr>
<tr class="oddRow">
<td class="label">&nbsp;Brand&lrm;</td><td>&nbsp;Scotch-Weld&lrm;
</td>
</tr>
<tr>
<td class="label">&nbsp;Capabilities&lrm;</td><td>&nbsp;Sustainability&lrm;
</td>
</tr>
<tr class="oddRow">
<td class="label">&nbsp;Color&lrm;</td><td>&nbsp;Clear Amber&lrm;
</td>

我正在尝试在兄弟语句之后编写 xpath 以通过 import.io 爬虫抓取“颜色”。当我选择“颜色”时的 xpath 代码是:
//*[@id="attributeList"]/table/tbody/tr[5]/td[1]

我试过使用:
//*[@id="attributeList"]/table/tbody/tr/td[.="Color"]/following-sibling::td

但它没有从表中获取颜色属性值。我不确定它是否与奇数和偶数行类有关?当我查看 html 时,它似乎合乎逻辑;颜色是“颜色”,属性值在下面的 td 括号中。

最佳答案

选中的文本 td节点包含的不仅仅是 "Color" .是&nbsp;Color&lrm; .因此,您可以选择 td其文本 contains 的节点字符串 "Color" :

'//*[@id="attributeList"]/table/tbody/tr/td[contains(text(), "Color")]/following-sibling::td/text()'

关于用于爬行的 XPath 跟随 sibling 不返回 sibling ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30673695/

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