我正在尝试解析代表澳大利亚政府网站提供的一年温度数据的this HTML table。
此表以不寻常的方式设置:列为月,行为月中的天数(因此第一行的单元格为JAN 1,FEB 1,MAR 1)。如果当天记录了数据,则每个单元格包含一个数字;如果没有记录数据,则每个单元格包含一个空单元格;如果该日期不存在,则每个单元格包含一个单元格类notDay
(例如,2月31日)。
我的目的是以
格式构建一个包含此数据的数据库DATE RAINFALL MAX TEMP
2015-02-07 35 31
2015-02-07 40 17
我的问题是:最简单或最有效(在程序员效率方面)解析表格以使数据成为可用格式的方式是什么?
我个人使用Ruby和Nokogiri库,但如果能够进行更好的讨论,我们会欢迎一般的非语言特定的算法/方法建议。我并不是在寻找代表编写代码并为我解决问题的人,而是寻求有关采取方法的建议。
答案 0 :(得分:1)
我想知道你是否可以:
按照出现的顺序拍摄所有单元格:
Array#flatten
。放弃notDay
Array#reject
个单元格
使用日期范围迭代所有相关日期:
(Date.new(2014,1,1) .. Date.new(2014,12,31)).each {...}
从那里开始......?