我在ios制作新闻应用。为此,我需要从rss获取图像 使用目标c
它们出现在RSS提要的节点中(参见下面的示例)
<description>
<![CDATA[
<div><img width="745" height="410" src="http://thisisthelink.com/to_my_image.jpg" class="attachment-large wp-post-image" alt="alt tag" style="margin-bottom: 15px;" /></div>Good morning. Normally Friday is a busy day as we prepare for the weekend’s game. Arsene Wenger holds his press conference, we get the latest team news and so on,...
]]>
</description>
我目前得到的<title> and <content>
没有任何问题,但我只需要提取图像源,这样我就可以将它放入我的imageView中,然后再放入我的TableRow。
这就是我要将字符串修剪为上面的
http://thisisthelink.com/to_my_image.jpg
不知道如何继续帮助我摆脱这个.. 此外,我不知道如何在我的应用程序中包含日历,以便用户可以在任何特定日期获取数据。
答案 0 :(得分:3)
我发现使用hpple非常有用来解析凌乱的HTML。 Hpple项目是用于解析HTML的XPathQuery库上的Objective-C包装器。使用它,您可以发送XPath查询并接收结果。
要求:
- 将libxml2添加到您的项目中
菜单项目 - &gt;编辑项目设置 搜索设置&#34;标题搜索路径&#34; 添加新的搜索路径&#34; $ {SDKROOT} / usr / include / libxml2&#34; 启用递归选项 - 将libxml2库添加到项目中
菜单项目 - &gt;编辑项目设置 搜索设置&#34;其他链接标志&#34; 添加一个新的搜索标记&#34; -lxml2&#34; - 从hpple获取以下源代码文件,并将它们添加到您的项目中:
TFpple.h
TFpple.m
TFppleElement.h
TFppleElement.m
XPathQuery.h
XPathQuery.m
代码示例
#import "TFHpple.h"
NSData *data = [[NSData alloc] initWithContentsOfFile:@"example.html"];
TFHpple *parser = [TFHpple hppleWithHTMLData:data];
NSString *xpathQueryString = @"//img";
NSArray *nodes = [parser searchWithXPathQuery:xpathQueryString];
for (TFHppleElement *element in nodes)
{
NSString *src = [element objectForKey:@"src"];
NSLog(@"img src: %@", src);
}