解析HTML表的最佳方法

时间:2011-12-14 02:18:34

标签: html xml parsing

我感兴趣的是解析下表和其他类似的表: http://www.cityofames.org/ftp/routes/Fall/wdreds&w.html

关于这项工作的最佳工具的任何建议?在搜索之后,我无法决定我应该使用什么,并希望在做出某些事情之前得到一些反馈。

我对任何语言/工具持开放态度。

3 个答案:

答案 0 :(得分:1)

如果您正在寻找HTML解析器,Java中有许多选项:

您可能还希望对使用这些here中的每一个的利弊进行非常全面的讨论。

答案 1 :(得分:1)

使用lynx,我可以做到:

$ lynx -dump http://www.cityofames.org/ftp/routes/Fall/wdreds\&w.html
    6:25  6:31  6:36  6:41 -----  6:46  6:50      6:56
    7:02  7:08  7:14  7:20 -----  7:26  7:30      7:36
   ----- ----- ----- -----  7:38  7:43  7:47      7:53 1A
    7:28  7:35  7:42  7:48 -----  7:56  8:00      8:06
   ----- ----- ----- -----  7:58  8:03  8:07      8:13 1A
...

使用选择的脚本语言变得非常容易解析,html2text也可以工作(从不使用它)。

您也可以使用grep / sed进行格式化。

答案 2 :(得分:1)

任何解析器都难以理解HTML。您需要首先使用像tidy(http://tidy.sourceforge.net/)这样的程序将其转换为相当接近的XML格式(对于良好性 - 意味着匹配的标记),如XHTML。 然后,您可以使用XML / XHTML解析器来解析格式良好的XML。请注意,您必须根据字体样式处理数据,并根据字体样式将标记转换为数组。

解析

时可以执行以下操作
start TR element
  --Create Array
 start b element
  -- Add One time
 end b element
 start b element
  -- Add second time
 end b element
end TR element