XPath follow-sibling用于爬行而不返回兄弟

Eli*_* VO 7 xpath crawler4j import.io

我正在尝试创建一个爬虫来从供应商网站中提取一些我可以针对我们的内部属性数据库进行审核的属性数据,并且是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>
Run Code Online (Sandbox Code Playgroud)

我试图在sibling语句之后写一个xpath来通过import.io爬虫抓取"Color".选择"Color"时的xpath代码是:

//*[@id="attributeList"]/table/tbody/tr[5]/td[1]
Run Code Online (Sandbox Code Playgroud)

我试过用:

//*[@id="attributeList"]/table/tbody/tr/td[.="Color"]/following-sibling::td
Run Code Online (Sandbox Code Playgroud)

但它并没有从表中获取颜色属性值.我不确定它是否与奇数和偶数行类有关?当我看到HTML时,它似乎具有逻辑意义; color是"Color",属性值位于以下td括号中.

unu*_*tbu 7

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

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