【问题标题】:How to read and parse the html file?如何读取和解析html文件?
【发布时间】:2013-12-12 11:32:35
【问题描述】:

我有一个 html 文件,需要读取它并访问一些值:

myHtml = 'toto.html';
readFile = fileread(myHtml);

现在解析html文件,你知道是否可以将html转换为xml然后使用xpath?

【问题讨论】:

  • 我会使用基于 java 的 HTML-Parser,你可以直接从 Matlab 命令行运行 java-code。 en.wikipedia.org/wiki/Comparison_of_HTML_parsers
  • 你的意思是 html 文件上的 XPATH ?为此,我应该使用 xmlread 读取文件,这是不可能的 ....
  • 忘记我之前的评论,使用丹尼尔的建议
  • @EitanT:所有链接的问题都处理 XML,而不是 HTML。
  • HTML 不是 XML 的子集。

标签: matlab


【解决方案1】:

我不建议尝试将 HTML 转换为 XML。它们是不同的格式,你很可能会被烧毁。存在 HTML 解析器,因此我们可以直接使用它们。

另外,为了完整起见,不要尝试使用正则表达式解析 HTML。有关于在 Matlab 中解析 HTML 的 Stack Overflow 问题,其中的答案推荐正则表达式。帮无辜的小猫帮个忙,把它们调出来。

不幸的是,Matlab 的库中似乎没有 HTML 解析器。

幸运的是,您可以在 Matlab 中轻松利用 Java 代码!
有了这个,Java HTML 解析器是公平的游戏。查看 jsoup 或 jtidy。戳戳this question

实际上,看看那个问题,再加上Comparison of HTML parsers Wikipedia 文章(感谢@Daniel R!),看起来 HTMLCleaner 或 Jtidy 可能会将 HTML 清理为 XML。同样,我不会打扰,直接解析 HTML。

【讨论】:

  • 为什么说 XPath 很好,即使 HTML 不是 XML 的子集?
  • 仅仅因为 Xpath 是完全正确的工具......如果我们正在处理 XML 文件
  • 完整的评论应该是,“Xpath 很好。太糟糕了,我们不能使用它,因为我们没有 XML 文件”
猜你喜欢
  • 2011-04-01
  • 2017-01-22
  • 2012-04-12
  • 2021-11-26
  • 1970-01-01
  • 2021-03-21
  • 2013-06-05
  • 2010-10-13
相关资源
最近更新 更多