我有一个网站(例如apple.com )包含链接的标签,例如
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://images.apple.com/main/rss/hotnews/hotnews.rss" />
那么,如何可以从中获得称号“RSS”和HREF?
更新1:我试图用现场转换成字符串
NSData *data = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://apple.com/"]] returningResponse:NULL error:NULL];
NSString *HTMLWithFeeds = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
但我不知道做什么了吧?
更新2:
这是不是从我的职务清楚,但除了在应该找到类型为“应用程序/ RSS + XML”此站点链接
你可以尝试使用正则表达式
NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"<link.*?href="(.*?)".*?>"
options:NSRegularExpressionCaseInsensitive
error:&error];
NSArray *matches = [regex matchesInString:string
options:0
range:NSMakeRange(0, [string length])];
for (NSTextCheckingResult *match in matches) {
NSRange matchRange = [match range];
NSRange firstHalfRange = [match rangeAtIndex:1];
NSRange secondHalfRange = [match rangeAtIndex:2];
}
苹果文档有关于如何进一步使用和访问比赛的一些例子:
https://developer.apple.com/library/ios/#documentation/Foundation/Reference/NSRegularExpression_Class/Reference/Reference.html
例如,类似下面的正则表达式中的HREFs应该做的:
<link.*?href="(.*?)".*?>
如果你使用jQuery,$( “链接”)ATTR( “标题”) - >打印“RSS” $( “链接”)ATTR( “HREF”) - >打印的http:// *
如果你想获得在href内容,使用jQuery阿贾克斯。 $获得( “HTTP:// *”,功能(结果){});
创建NSXMLDocument
使用-initWithContentsOfURL:options:error:
与NSXMLDocumentTidyHTML
选项。 然后,您可以导航开始节点的层次-rootElement
。 或者,您可以使用XPath,像[doc nodesForXPath:@"//link@title"]
。