【发布时间】:2011-08-27 06:08:12
【问题描述】:
我正在寻找一个解析器,它可以让我成功解析损坏的 xml,例如采用“最佳猜测”方法。
<thingy>
<description>
something <b>with</b> bogus<br>
markup not wrapped in CDATA
</description>
</thingy>
理想情况下,它将产生一个东西对象,带有描述属性和里面的任何标签汤。
欢迎提出有关如何解决问题的其他建议(除了从有效标记开始)。
非 php 解决方案(例如 Beautiful Soup (python))并没有被排除在外,但我更愿意坚持公司的主流技能
谢谢!
【问题讨论】:
-
您没有理解 XML 的重点:XML 的主要思想是,如果遇到语法错误,它将杀死您、您的家人、您的朋友以及您曾经与之交谈过的任何人。没有严格错误处理的 XML 不再是 XML ^^
-
@nikic - 我一直处于与 OP 相同的位置,即不得不处理由第三方提供的损坏的“XML”输入,这些输入没有得到 XML 的重点。虽然我同意这并不理想,但当必须导入数据并且我们无法让第三方修复他们的系统时,我们只需要处理它。 :-(
-
和@Spudley 描述的差不多,是的
-
如果它可以成功解析损坏的 XML,那么它可能是一个非常有用的软件,但它不是 XML 解析器(符合标准的 XML 解析器不允许这样做)。