【发布时间】:2011-09-01 11:15:44
【问题描述】:
请使用 hpple(xpath),这是我之前问题的后续:
http://stackoverflow.com/questions/6723244/iphone-how-to-select-this-label
如何获取seekVideo(number) 中的号码?例如:
<a href="#" class="transcriptLink" onclick="seekVideo(2000); return false;"
我想得到“2000”。
我试过了:
NSArray *elements = [xpathParser search:@"//div[@id='transcriptText']/div/p/number(substring-before(substring-after(@onclick, '('), ')'))"];
但这是不对的。我该怎么做?
如果有人可以使用名为 hpple(xpath) 的代码框架,那就太好了。
这是我获取文本的代码,现在如何更改获取数字?????
#define WebSite @"http://www.ted.com/talks/matt_cutts_try_something_new_for_30_days.html"
- (void)setLoadData
{
NSData *siteData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:WebSite]];
TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:siteData];
NSArray *elements = [xpathParser search:@"//div[@id='transcriptText']/div/p/a[number(substring-before(substring-after(@onclick, '('), ')')) >2000]/text()"];
NSMutableArray *arr = [[NSMutableArray alloc] init];
for (TFHppleElement *element in elements)
{
NSString *strs = [element content];
NSLog(@"cc: %@", strs);
[arr addObject:strs];
NSLog(@"arr: %@", arr);
}
self.listData = arr;
[arr release];
[xpathParser release];
}
【问题讨论】:
-
好问题,+1。有关问题的解释以及计算结果为所需数字的正确 XPath 表达式,请参阅我的答案。
标签: iphone html xml xpath hpple