Bootstrap

ios xpath解析html,在iOS中使用Xpath查找P标签内的所有元素

我并不认为这个问题的iOS部分真的太重要了,但我只是认为我会添加该部分以保证安全。我试图解析一些应用程序的HTML(客户端想要解析HTML而不是使用Web视图),并使用我从另一个问题中发现的hpple代码以及用于搜索的XPath格式。我非常喜欢Xpath,从来没有真正使用它,但我开始了解它,但我坚持试图获得HTML的一部分(我能够搜索并找到我需要的一切)。从源HTML文件中,我需要拉的是在ap标签中,但在p标签内还可能有其他几个节点(如href',em,br“等)。想要也被封闭在一个div类中,并且我试着看看我是否可以将div类下的所有元素以及p中的所有元素都拉出来,但到目前为止,我似乎无法获得我需要的东西。的HTML看起来如何快速出样。在iOS中使用Xpath查找P标签内的所有元素

This is some sample text that also includes a Sample Link and also some formatted text.

A New line may also be present

所以我真的需要是div类内的所有

标签,因为在某些情况下,可能会有更多。我已经在我的最新尝试,试图//div[@class='body']/p[text()]但也没有工作,它只是拉了一段时间从岗位。

一旦我获得了所有内容,我希望将整个帖子转换为将在应用中使用的NSString,但是一旦我获得XPath搜索格式正确,那么我可以在那一部分中完成该操作。谢谢。

编辑: 这是我用来首先执行Xpath搜索,然后将结果转换为字符串的iOS中的代码。也许是在这里,我做错了什么。

NSArray *foundPosts = [xpathParser search:@"//div[@class='post']//p//node()"];

TFHppleElement *postelement = [foundPosts objectAtIndex:0];

NSString *Posts = [postelement content];

+0

这似乎是一个非常简单的XPath,比如'// div [@ class ='post'] // p'。有什么问题? –

+0

首先,你的谓词过滤了'@ class ='body'',但是你提供的源代码中的类名是'post'。 –

+0

@lwburk对不起,这只是一个类型,我只想给出一个简单的例子,可以包含在post标签中需要解析的东西 –

;