【问题标题】:scraping items with x-ray that don't have a single root用 X 射线刮擦没有单根的物品
【发布时间】:2016-09-23 12:33:04
【问题描述】:

我在抓取没有单个根的项目时遇到了麻烦。我相信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 射线是否支持刮片?

【问题讨论】:

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


    【解决方案1】:

    你可以使用 + 来选择兄弟姐妹

    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' ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-02
      • 1970-01-01
      • 1970-01-01
      • 2020-01-09
      相关资源
      最近更新 更多