html表到数组ruby

时间:2010-10-16 15:30:18

标签: ruby watir

我正在使用watir进行屏幕抓取,我下载了一个xls文件。当我在记事本中打开这个文件时,我发现它只是一堆html表。是否有任何函数或gem将此页面转换为一堆数组。 任何想法都表示赞赏。

3 个答案:

答案 0 :(得分:1)

通常,只要不使用colspan或rowspan属性,只需遍历带有表的HTML文件并提取行和列,这是一个简单的练习。那些混乱的逻辑流程需要一些感知它们引起的间隙,并且需要用*跨度的重复值填补空白。 How do I parse an HTML table with Nokogiri?可能有帮助。

通过查看桌面上的XLS文件,我认为它们不是XML或HTML。我不确定你下载了什么。我做了一个快速搜索和roo(http://roo.rubyforge.org/)似乎是一个很好的起点。

答案 1 :(得分:1)

  1. 将其缩小为......
  2. 清除空白
  3. 替换 标签
  4. 标记替换为“,
  5. 替换 & &带有 nothing
  6. 标签
  7. |
  8. 替换 标记
  9. 使用 |
  10. 拆分行
  11. 使用
  12. 拆分字段

    你可以将它简化一点,但这就是它的要点。

答案 2 :(得分:1)

XLS是二进制格式。如果您在文件内容中看到HTML表,则表示您可能没有正确下载文件。

如何通过Watir下载XLS文件?您是否必须自动化“文件下载”窗口,或者只是按照指向XLS文件的链接并将内容写入文件?