首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >解析iPhone上的超文本标记语言

解析iPhone上的超文本标记语言
EN

Stack Overflow用户
提问于 2009-01-02 00:37:51
回答 7查看 73.9K关注 0票数 68

有人能推荐一个C或Objective-C库来解析HTML吗?它需要处理乱七八糟的HTML代码,这些代码不会完全验证。

这样的库是否存在,或者我是否更好地尝试使用正则表达式?

EN

回答 7

Stack Overflow用户

发布于 2011-03-09 20:58:00

如果有人在谷歌上搜索了一个很好的XPath解析器并使用了TFHpple,那么请注意TFHpple使用的是XPathQuery。这很好,但有一个内存泄漏。

在*PerformXPathQuery函数中,如果发现节点为空,则在清除之前跳出。

因此,您会看到这段代码:添加两个清理行。

代码语言:javascript
复制
  xmlNodeSetPtr nodes = xpathObj->nodesetval;
  if (!nodes)
    {
      NSLog(@"Nodes was nil.");
        /* Cleanup */
        xmlXPathFreeObject(xpathObj);
        xmlXPathFreeContext(xpathCtx);
      return nil;
    }

如果你正在做大量的解析,这是一个恶意的泄漏。现在……如何找回我的夜晚:-)

票数 19
EN

Stack Overflow用户

发布于 2010-05-11 05:18:08

我围绕libxml编写了一个轻量级包装器,它可能很有用:

Objective-C-HMTL-Parser

票数 12
EN

Stack Overflow用户

发布于 2009-01-02 02:14:19

这可能取决于HTML的混乱程度以及您想要提取的内容。但通常情况下,Tidy做得相当好。它是用C语言编写的,我猜你应该能够为iPhone构建并静态链接它。您可以轻松地安装命令行版本并首先测试结果。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/405749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档