【问题标题】:I can't use dashes in XPATH on iphone using libxml2我不能在使用 libxml2 的 iPhone 上的 XPATH 中使用破折号
【发布时间】:2011-01-25 13:09:01
【问题描述】:

我正在尝试使用 KissXML for iphone 解析 HTML 数据。我注意到在 id() 标签中不能有破折号,否则它不会评估。例如,如果我试图获取元素,我会这样做

id("foo")

但是,如果我尝试进入 element ,我会尝试

id("foo-bar")

libxml2 XPATH 引擎似乎没有返回任何内容。不过,它可以使用 XPATH 检查 Firefox。任何人遇到这个问题并知道它发生的原因或有解决方法(除了使用绝对 XPATH 路径?)

【问题讨论】:

    标签: iphone cocoa-touch xpath libxml2


    【解决方案1】:

    我对 KissXML 或您的项目了解不多。如果你只是做一些简单的 Xpath 查询,我建议你试试这个:

    http://cocoawithlove.com/2008/10/using-libxml2-for-parsing-and-xpath.html

    基本上是2种方法

    NSArray *PerformXMLXPathQuery(NSData *document, NSString *query);
    NSArray *PerformHTMLXPathQuery(NSData *document, NSString *query);
    

    我用这种方法很容易成功。

    【讨论】:

    • 嘿 Bryan,是的,我最初使用了那个方法,但我发现 KissXML 最后给了我更清晰的代码,因为它非常符合 Apple 的 NSXMLDocument 类。
    猜你喜欢
    • 2012-03-05
    • 2020-08-02
    • 2015-12-08
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    • 2012-09-08
    • 2011-03-28
    相关资源
    最近更新 更多