ios - 在 Objective-C 中仅从 <div> 获取文本和图像

标签 ios html rss

我正在制作一个新闻阅读应用程序。我发现的最好的网站是http://fulltextrssfeed.com/ 它从任何网页获取文本和图像,并返回干净的文本。由于他们没有 API,我需要某种方法来从 <div> 获取数据。 . 这是 div ID:

<div id="preview">

我如何浸入到提要并仅获取其内容(如果没有 HTML 标签,那就更好了,如果有的话,我可以解决这个问题。)

最佳答案

我不确定你的问题,但如果你使用 obj-c,我真的推荐 Hpple .这是一个非常好的 XML/HTML 解析器。

要使用它,您需要在“标题搜索路径”中添加${SDKROOT}/usr/include/libxml2您的项目选项并添加-lxml2 到“其他链接器标志”。

然后,当您已经拥有 Hpple 文件时,将其拖到您的代码中:TFHpple.hTFHpple.mTFHppleElement.hTFHppleElement.mXPathQuery.hXPathQuery.m

在代码中(为了让你的div“预览”),添加:

NSData *htmlData = [[NSString stringWithContentsOfURL:[NSURL URLWithString: @"http://www.yoursite.com/index.html"]] dataUsingEncoding:NSUTF8StringEncoding];

TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:htmlData];
NSArray *elements  = [xpathParser searchWithXPathQuery:@"//div[@id='preview']"]; // Here we use 
TFHppleElement *element = [elements objectAtIndex:0];
NSString *string = [element content];
NSLog(@"%@", string);

[xpathParser release];
[htmlData release];

现在我们有了 Hpple 的“预览 div”。要获取某个子类(如 pa),请使用它:

NSArray *elements  = [xpathParser searchWithXPathQuery:@"//div[@id='preview']/p/text()"]; 

要了解更多信息,请查看 XPath Syntax .另请检查a tutorial .

希望有帮助。

关于ios - 在 Objective-C 中仅从 <div> 获取文本和图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10774737/

相关文章:

html - IE 不尊重媒体查询——有解决办法吗?

html - 悬停时显示多个 div

ios - 如何通过一个按钮连接两个 View Controller ?

ios - 获取希伯来语字符串的第一个字母

ios - swift ios : drag view controller onto screen

javascript - 将相同的图像元素附加到所有类的更简洁的方法?

rss - 供应商创建内容并通过 RSS 在我们的网站上发布 - 这会影响我们的 SEO 吗?

mercurial - 是否可以在 hgweb 的 RSS 提要中包含差异?

github - 设置 Github Commit RSS 源

ios - 圆角导致顶部边缘模糊