2014-04-29 233 views
1

我仍在采用雅虎管道的婴儿步骤,并努力与我认为应该是一项简单的任务。将表格转换为JSON

我有一个table on a page正在实时更新(每1-2分钟)。
我想提取的行,推到一个管道,然后吐出在以下格式的JSON:

"sites": [ 
{ 
     "Site": "210001-Singleton", 
     "LastSampleTime": "29/04/2014 11:51:00", 
     "RiverLevel": "0.744", 
     "FlowRate": "501.6", 
     "FlowRate": "0.744", 
     "Rainfall": "", 
     "WaterTemp": "", 
     "Conductivity": "" 
    }, 
etc. 

我想我就在想,一旦我拉到相对表组件与XPath fetcher,我会利用一个包含其中的Item Builder的Loop来将数据吐出上述格式。但是,我正努力尝试拉入简单的表格。

以下是my yahoo pipe的简化版本。
我已经尝试了XPath字符串的多种变体,试图获取我需要的行。
从检查萤火虫表,我知道我想要的TR,似乎都分享相同的高度tr style="height:18px" 然而,不知道这是否是最好的方式来提取它们。

有人可以帮助提供一些关于如何将表格拉成我想要的格式的指针吗?不太确定我在哪里出错Xpath

+0

您的管道的链接不再工作,似乎你删除了管道。如果你把它放回去,我可以尝试看看。 – janos

回答

2

Import.io可以做你想做的。即使该网站上的HTML有点混乱,您仍然可以在该工具中使用自定义xpath覆盖。

我建数据的第一行的你,所以你需要做的就是去和编辑现有的提取将使用以下提取为起点https://import.io/data/set/?mode=loadSource&source=f867a123-091e-4596-bbea-871df2d5ceb7

只要打开它,更多的列,编辑提取器并添加您需要的cols。这是我使用的XPath代码:

/html/body/table/tbody/tr[7]/td[5] 

7排在表中第一行的数据,和TD [2]是在第一小区只是增加在TR数[X]打下一行。

一旦你的数据结构化,点击集成,并按照说明。使用import.io支持也可以,那就是它们的用途。

如果表将与更多的行进行扩展,你可能要改变XPATH关闭TR

免责声明的子元素的值的工作:我在import.io工作,其他工具存在。