加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Ruby Nokogiri解析HTML表

发布时间:2020-12-17 02:26:23 所属栏目:百科 来源:网络整理
导读:我正在使用mechanize / nokogiri并需要解析以下 HTML字符串. 任何人都可以帮助我使用xpath语法来执行此操作或任何其他方法吗? table tr class="darkRow" td span a href="?x=mSOWNEBYee31H0eV-V6JA0ZejXANJXLsttVxillWOFoykMg5U65P4x7FtTbsosKRbbBPuYvV8nPh
我正在使用mechanize / nokogiri并需要解析以下 HTML字符串.
任何人都可以帮助我使用xpath语法来执行此操作或任何其他方法吗?

<table>
  <tr class="darkRow">
    <td>
      <span>
        <a href="?x=mSOWNEBYee31H0eV-V6JA0ZejXANJXLsttVxillWOFoykMg5U65P4x7FtTbsosKRbbBPuYvV8nPhET7b5sFeON4aWpbD10Dq">
            <span>4242YP</span>
        </a>
      </span>
    </td>
    <td>
      <span>Subject of Meeting</span>
    </td>
    <td>
      <span>
        <span>01:00 PM</span> 
        <span>Nov 11 2009</span> 
        <span>America/New_York</span>
      </span>
    </td>
    <td>
      <span>30</span>
    </td>
    <td>
      <span>
        <span>example@email.com</span>
      </span>
    </td>
    <td>
        <span>39243368</span>
    </td>
  </tr>
  .
  .
  .
  <more table rows with the same format>
</table>

我希望这是输出

"4242YP","Subject of Meeting","01:00 PM Nov 11 2009 America/New_York","30","example@email.com","39243368"
.
.
.
<however many rows exist in the html table>

解决方法

这样的事情?

items=doc.xpath('//tr').map {|row| row.xpath('.//span/text()').select{|item| item.text.match(/w+/)}.map {|item| item.text} }

收益:
=> [[“4242YP”,“会议主题”,“01:00 PM”,“2009年11月11日”,“America / New_York”,“30”,“example@email.com”,“39243368”],[“ ABCDEFG“]

选择仅包括以单词字符开头的跨度(例如,排除某些跨度所具有的空白).您可能需要针对特定??情况优化“选择”过滤器.

我添加了一个包含包含abcdefg的span的极简主义行,以便您可以看到嵌套数组.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读