从一组HTML文件中提取表格内容的最佳方法是什么?

时间:2008-09-16 01:53:46

标签: java html excel csv extract

用TIDY清理一个装满HTML文件的文件夹后,如何提取表格内容以便进一步处理?

6 个答案:

答案 0 :(得分:2)

我过去曾经使用过BeautifulSoup取得了巨大的成功。

答案 1 :(得分:1)

取决于您想要做什么样的处理。您可以告诉Tidy生成XHTML,这是一种XML,这意味着您可以在结果上使用所有常用的XML工具,如XSLT和XQuery。

如果要在Microsoft Excel中处理它们,那么您应该能够将表格从HTML中分割出来并将其放在一个文件中,然后在Excel中打开该文件:它会很乐意将HTML表格转换为电子表格页面。然后,您可以将其另存为CSV或Excel工作簿等。(您甚至可以在Web服务器上使用它 - 返回HTML表格,但将Content-Type标题设置为application/ms-vnd.excel:Excel将打开并且导入表格并将其转入电子表格。)

如果您希望CSV输入数据库,那么您可以像以前一样通过Excel,或者如果您想自动化该过程,您可以编写一个程序,使用您选择的XML导航API来迭代表格行并将其另存为CSV。 Python的Elementtree和CSV模块可以让这很容易。

答案 2 :(得分:1)

在审核完建议后,我结束了HtmlUnit

使用HtmlUnit,我能够自定义Java代码以打开文件夹中的每个HTML文件,导航到TABLE标记, 查询每个列内容并提取创建CSV文件所需的数据。

答案 3 :(得分:0)

在.NET中,您可以使用HTMLAgilityPack

有关详细信息,请参阅StackOverflow上的previous question

答案 4 :(得分:0)

如果要从HTML标记中提取内容,则应使用某种类型的HTML解析器。为此目的,那里有很多,这里有两个可能满足您的需求:

http://jtidy.sourceforge.net/
http://htmlparser.sourceforge.net/

答案 5 :(得分:0)

遍历文本并使用正则表达式:)

http://www.knowledgehouse.sg