解析HTML表的最佳方法

解析HTML表的最佳方法,html,xml,parsing,Html,Xml,Parsing,我对解析下表和其他类似表格感兴趣: 关于这项工作的最佳工具有什么建议吗?在四处搜索之后,我无法决定我应该使用什么,我想在做出承诺之前得到一些反馈 我对任何语言/工具都持开放态度。如果您正在寻找HTML解析器,Java中有许多选项: 您可能还想对使用每种方法的利弊进行非常全面的讨论。如果您正在寻找HTML解析器,Java中有许多选项: 您可能还想对使用每种方法的利弊进行非常全面的讨论。对于lynx,我可以做: $ lynx -dump http://www.cityofa

我对解析下表和其他类似表格感兴趣:

关于这项工作的最佳工具有什么建议吗?在四处搜索之后,我无法决定我应该使用什么,我想在做出承诺之前得到一些反馈


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

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


您可能还想对使用每种方法的利弊进行非常全面的讨论。

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

您可能还想对使用每种方法的利弊进行非常全面的讨论。

对于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对其进行格式化。

使用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对其进行格式化。

HTML太难被任何解析器理解。您需要首先使用tidy之类的程序将其转换为类似XHTML的合理紧密的XML格式(用于格式良好-表示匹配的标记)(http://tidy.sourceforge.net/). 然后可以使用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        

HTML太难了,任何解析器都无法理解。您需要首先使用tidy之类的程序将其转换为类似XHTML的合理紧密的XML格式(用于格式良好-表示匹配的标记)(http://tidy.sourceforge.net/). 然后可以使用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        

你想把它解析成什么格式?@Petah:我想把这些列分成时间数组,或者类似的数组。什么样的数组,JSON,PHP,etc@Petah:嗯,我在考虑在本地创建一个新文件,可能采用CSV等格式,以便在其他地方使用。因此,这将有助于实现这一目标。抱歉这么含糊。你想把它解析成什么格式?@Petah:我想把这些列分成时间数组,或者类似的数组。什么样的数组,JSON,PHP,etc@Petah:嗯,我在考虑在本地创建一个新文件,可能采用CSV等格式,以便在其他地方使用。因此,这将有助于实现这一目标。抱歉说得这么含糊。