我正在尝试制作一个显示发布在网站上的图像的应用程序,但该网站每个月都会上传几张图像,我希望该应用程序在新图像上传到网站后立即显示它们。
该网站是: http: //www.bowtieful.com/bowtiecollection/
如何将网站上的图像导入我的应用程序?
我正在尝试制作一个显示发布在网站上的图像的应用程序,但该网站每个月都会上传几张图像,我希望该应用程序在新图像上传到网站后立即显示它们。
该网站是: http: //www.bowtieful.com/bowtiecollection/
如何将网站上的图像导入我的应用程序?
假设每个月的图像 URL 不一致,我会使用 TFHpple,当应用程序加载时,解析 DOM 搜索@"//img"
并从结果中提取src
URL 属性。
本教程非常适合 TFHpple。
你需要这样的东西来解析页面的 HTML:
https://github.com/zootreeves/Objective-C-HMTL-Parser
看起来你可以只抓取每个<img>
元素,所以它看起来像这样:
HTMLParser *parser = [[HTMLParser alloc] initWithString:html error:&error];
if (error) {
NSLog(@"Error: %@", error);
return;
}
HTMLNode *bodyNode = [parser body];
NSArray *imgNodes = [bodyNode findChildTags:@"img"];
for (HTMLNode *imgNode in imgNodes) {
NSData *imageData = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString: [inputNode getAttributeNamed:@"src"]]];
UIImage *img = [UIImage imageWithData:imageData]; // do whatever you need to with this
}
D80七叶树
这就是我在 BowtiefulImages.h 中声明我的属性的方式。
@interface BowtiefulImages:NSObject
@property (nonatomic, copy) NSString *title; @property (nonatomic, copy) NSString *url;
@结尾
这是我的 MasterviewController.M http://i41.tinypic.com/72d85z.png
这也在我的 MasterviewController.m http://i41.tinypic.com/k9c3z4.png
如果我按照您上次的建议进行操作,我仍然不会在每一行上都获得 uiimages。在最后两行(您建议的行)上,我将 // 放在它前面,因为 xcode 给出了一个错误:使用未声明的标识符 url。