2009-12-16 80 views
3

我在iPhone应用程序上使用NSXMLParser来解析RSS或Atom Feed链接的HTML文件。让NSXMLParser跳过元素

一切运行正常,直到解析器找到一个<script>元素包括Javascript代码没有CDATA宣言,这将导致解析错误。

可以告诉解析器跳过所有命名<script>的要素是什么?

回答

0

为什么不执行解析器:parseErrorOccured:并告诉它优雅地失败?我不相信有一种方法说“跳过这个元素”

+0

不幸的是我不能这样做,因为我需要提取一个RSS源的链接,然后保存它。 我已经尝试了几个页面,它的工作原理(如果parseErrorOccurred被调用),但如果在链接标记之前有一个脚本标记,解析器会中止没有做任何事情。 – Lex 2009-12-16 04:59:40

0

这是不可能的,据我所知,只是跳过的元素。但是,您可能能够使用正则表达式替换来过滤掉无效内容。

另一种可能是在解析之前使用Tidy来清理它。