hpple HTML Parsing Library no analiza correctamente en iOS 7

Estoy usando la biblioteca de análisis de hpple en mi aplicación iOS. https://github.com/topfunky/hpple

Estoy teniendo un problema donde el analizador no está parsing correctamente mi página HTML en iOS 7. Se analiza correctamente en iOS 6 y obtengo los objects devueltos. En iOS 7 me devuelven solo un análisis parcial y uno incorrecto. La biblioteca lee incorrectamente el HTML en iOS 7. He intentado depurar el problema y he llegado a la conclusión de que el problema radica en este método.

NSArray *PerformXPathQuery(xmlDocPtr doc, NSString *query) { xmlXPathContextPtr xpathCtx; xmlXPathObjectPtr xpathObj; /* Create xpath evaluation context */ xpathCtx = xmlXPathNewContext(doc); if(xpathCtx == NULL) { //NSLog(@"Unable to create XPath context."); return nil; } /* Evaluate xpath expression */ xpathObj = xmlXPathEvalExpression((xmlChar *)[query cStringUsingEncoding:NSUTF8StringEncoding], xpathCtx); if(xpathObj == NULL) { //NSLog(@"Unable to evaluate XPath."); xmlXPathFreeContext(xpathCtx); return nil; } xmlNodeSetPtr nodes = xpathObj->nodesetval; if (!nodes) { //NSLog(@"Nodes was nil."); xmlXPathFreeObject(xpathObj); xmlXPathFreeContext(xpathCtx); return nil; } NSMutableArray *resultNodes = [NSMutableArray array]; for (NSInteger i = 0; i < nodes->nodeNr; i++) { NSDictionary *nodeDictionary = DictionaryForNode(nodes->nodeTab[i], nil,false); if (nodeDictionary) { [resultNodes addObject:nodeDictionary]; } } /* Cleanup */ xmlXPathFreeObject(xpathObj); xmlXPathFreeContext(xpathCtx); return resultNodes; } 

el documento y la consulta no son nil cuando se llama a este método. No sé cómo registrar las otras classs en este método y no sé cuál de ellas devuelve el análisis incorrecto. Quizás el problema se encuentra en el libxml2.dylib de Apple

No sé exactamente qué hace el código en el método hasta el final del método. Cualquier ayuda será muy apreciada, ya que no sé por qué la biblioteca no puede analizar en iOS 7 la misma página HTML que puede analizar en iOS 6.

En iOS 7, esta biblioteca analiza correctamente otras páginas HTML en otras aplicaciones. El código que uso para analizar el inicio del analizador es

  NSData *htmlData = [NSData dataWithContentsOfURL:dataURL]; TFHpple *dataParser = [TFHpple hppleWithHTMLData:htmlData]; NSString *dataXpathQueryString = @"//td[3]"; NSArray *dataNodes = [dataParser searchWithXPathQuery:dataXpathQueryString]; NSMutableArray *newData = [[NSMutableArray alloc] initWithCapacity:0]; for (TFHppleElement *element in dataNodes) { data = [[GFCData alloc] init]; [newData addObject:data]; data.title = [[element firstChild] content]; data.title = [data.title stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; } 

donde dataURL es http://www.gfchurch.com/ru/pages/video.php?a=5&b=51&c=37

Puedo proporcionar más información si es necesario.

Este problema se resolvió al no utilizar // en searchPathQuery . Debería probar este problema nuevamente porque la biblioteca se actualizó hace un mes y tal vez se solucionó el problema.

Resolví este problema administrando correctamente los espacios de nombres a través de @ xmlXPathRegisterNs @

No tenía el problema de analizar HTML, pero la respuesta SOAP.