如何从其他网站创建功能的UIWebView(如osx Dashboard)

时间:2011-12-07 20:08:58

标签: iphone ios uiwebview screen-scraping

您好,我想使用当地气象服务网站提供的信息制作个人雨雷达应用程序。 我想在我的应用程序中只有雨雷达显示,你可以在这个链接中看到

http://www.metservice.com/national/maps-rain-radar/rain-radar/auckland

我想知道是否可以从中调用图像并创建我自己的小玩家。我使用谷歌源查看器,并弄清楚代码的哪些部分包含图像,但我不知道如何使用它们。

enter image description here enter image description here

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

你面前有相当多的工作,但这将是一次很好的学习经历。

首先,您需要以HTML格式获取网页内容。 Apple有一个教程,演示如何使用NSURLRequestNSURLConnection来执行此操作:

URL Loading System Programming Guide

从该链接获取数据后,您可以跳过创建NSString,然后直接跳转到XML解析器。但是,如果您确实需要为其他用途创建字符串,则可以使用:

NSString *stringWithHTMLData =
            [[NSString alloc] initWithData:webPageData
                              encoding:NSStringUTF8Encoding];

获得HTML数据后,您可以使用XML解析器查看HTML并查找要显示的图像的URL:

NSXMLParser *parser = [[NSXMLParser alloc] initWithData:webPageData];

NSXMLParser类引用有助于确定如何遍历HTML:

NSXMLParser Class Reference

一旦解析了URL并拥有它们,您实际上可以使用URL创建NSImage个对象,并且它们会从网页中懒洋洋地加载:

NSURL *firstImageURL = ...;
NSImage *image = [[NSImage alloc] initByReferencingURL:firstImageURL];
// Do something with the image, like adding it to a view somewhere