从 App 参考网站实时更新状态
Posted
技术标签:
【中文标题】从 App 参考网站实时更新状态【英文标题】:Reference website live updating status from App 【发布时间】:2013-12-03 14:10:32 【问题描述】:我有一个网站:http://www.grandforks.af.mil/library/weathercenter/index.asp
页面中间有一个标志,表示基地当前的路况。
每个条件的文件名相差 1 个数字。
绿色是 19 岁 黄色是20 红色是21我无法控制此网站。
我的问题是如何在我正在构建的应用中显示当前的路况以反映网站?我不希望有任何用户输入我希望应用程序能够从网站中退出。我曾尝试使用 UIWebView 但我无法让它专注于页面的那个区域。如果我能做到这一点,那可能是更好的解决方案。
【问题讨论】:
【参考方案1】:丑陋的解决方案: 您可以下载网站的 html,搜索字符串“http://www.grandforks.af.mil/shared/media/document/AFD-121002-”对其进行解析并获取实际 URL(类似于http://www.grandforks.af.mil/shared/media/document/AFD-121002-019.jpg)。 之后,您可以在 UIImageView 中加载该 URL,或者(更好地)区分并显示应用中包含的图像。
丑陋取决于这样一个事实,即如果他们更改图片的 URL,您的应用就会停止工作。
我建议当用户打开应用程序时,它会检查您的页面并最终下载您要查找的字符串。这样做,如果网站更改了 url,您可以手动修改源而不更新应用程序。
我不知道使用他人信息是否合法。
编辑: 这是我构建的一个示例,演示了如何对字符串进行子串化:
NSString *myString = @"11111www.the-site.com/img42.jpg222222222222222";
NSString *searchString = @"www.the-site.com/img";
NSRange range = [myString rangeOfString:searchString];
NSLog(@"searched string strart at character %lu, and it's long %lu charactrers", (unsigned long)range.location, (unsigned long)range.length);
NSInteger index = range.location + range.length;
NSString *mySubString = [myString substringFromIndex:index];
NSLog(@"string from the index: %@", mySubString);
//I know that the substring I'm looking for is long exactly 2 characters
NSString *the_answer = [mySubString substringToIndex:2];
NSLog(@"this should print 42: %@", the_answer);
我添加了一些打印,因此您可以逐步看到我在做什么。 显然你必须用“http://www.grandforks.af.mil/shared/media/document/AFD-121002-”来改变“searchString”,而myString是页面的html。
希望对你有帮助。
【讨论】:
所以我对解析有点陌生。你有什么办法可以帮助我吗?我不是要你写我的应用程序或任何东西。也许可以帮助我提高我的技能和应用程序。以上是关于从 App 参考网站实时更新状态的主要内容,如果未能解决你的问题,请参考以下文章