iPhone SDK: hpple html-парсер SIGABRT - PullRequest
       12

iPhone SDK: hpple html-парсер SIGABRT

0 голосов
/ 09 октября 2011

У меня есть следующий код:

-(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"];

Любая помощь очень ценится.

1 Ответ

1 голос
/ 11 октября 2011

user170317 дал вам ответ, приятель, класс TFHpple изменился между загруженной версией и примером, который вы используете (однако в загрузке вы найдете пример, который работает, вроде)

причина этого в том, что метод 'search' теперь называется 'searchWithXPathQuery', измените его на этот, и он будет работать. Если после его запуска вы получаете нулевое значение, это потому, что вы не нацеливаетесь на нужный дочерний узел, но это другой вопрос

...