iPhone SDK:hpple HTML解析器SIGABRT
问题描述:
我有以下代码:iPhone SDK:hpple HTML解析器SIGABRT
-(void)getHTMLData {
NSData *data = [[NSData alloc] initWithContentsOfFile:@"example.html"];
TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:data];
//Get all the cells of the 2nd row of the 3rd table
NSArray *elements = [xpathParser search:@"//table[3]/tr[2]/td"]; // "//a" -- all a tags
TFHppleElement *element = [elements objectAtIndex:0];
NSString *content = [element content];
[xpathParser release];
[data release];
NSLog(@"tagName:%@", content);
}
,但任何时候运行,它停在一个SIGABRT错误行:
NSArray *elements = [xpathParser search:@"//table[3]/tr[2]/td"];
任何帮助是非常赞赏。
答
user170317给你答案的伴侣,在TFHpple类,你下载的版本和您所使用的例子之间改变(但你会发现在不工作的下载为例,还挺)
原因这就是'search'方法现在是'searchWithXPathQuery',将它改为这个,它就可以工作。如果在运行后得到空值,这是因为您没有针对正确的子节点,但那是另一个问题
使NSZombieEnabled知道更多关于错误的信息。 –
这是我得到的语义问题:实例方法'搜索:'找不到(返回类型默认为'id') – EI756
in u TFHpple类您没有搜索:方法。请检查那里 – user170317