使用没有单根的X射线刮取物品

时间:2016-09-23 12:33:05

标签: node.js web-scraping x-ray

我在抓取没有单根的项目时遇到了麻烦。我相信x-ray

所需要的东西

考虑抓取黑客新闻,其中每个标题由两个TR组成:

<tbody>
  <tr class="athing>content item 1</tr>
  <tr>content item 1</tr>
  <tr class="spacer></tr>
  <tr class="athing>content item 2</tr>
  <tr>content item 2</tr>
  <tr class="spacer></tr>
</tbody>

可以看出,每个项目没有共同的根节点。

在这种情况下,X射线是否支持刮擦?

1 个答案:

答案 0 :(得分:0)

您可以使用+选择同级

x(html, 'tbody ',
    ['tr.athing, tr.athing+tr:not(.athing):not(.spacer)']
)
(function (err, res) {
    console.log(res)
})

结果:

[ 'content item 1a',
  'content item 1b',
  'content item 2a',
  'content item 2b' ]