Paso 3: Obtener los datos!
Usaremos un código impresionante que encontré en una respuesta StackOverflow para extraer los datos en forma de un NSMutableArray. La matriz tendrá un montón de NSStrings, cada uno siendo algunos datos que Xcode era capaz de encontrar entre sus dos tapas. Si no estás familiarizado con NSMutableArrays que hacen alguna lectura, ya que son extremadamente útil y utilizado en Casi todos programación idiomas, aunque pueden presentar en una forma diferente.
Aquí está el código para extraer los datos en forma de un método:
-(NSMutableArray*) stringsBetweenString:(NSString*) iniciar el texto de:(NSString*) de andString:(NSString*) final andText
{
NSMutableArray * cadenas = [NSMutableArray arrayWithCapacity:0];
NSRange startRange = [rangeOfString:start texto];
para (;)
{
Si (startRange.location! = NSNotFound)
{
TargetRange de NSRange;
targetRange.location = startRange.location + startRange.length;
targetRange.length = [longitud] del texto - targetRange.location;
NSRange endRange = [texto rangeOfString:end opciones: 0 rango: targetRange];
Si (endRange.location! = NSNotFound)
{
targetRange.length = endRange.location - targetRange.location;
[cadenas addObject: [substringWithRange:targetRange texto]];
RestOfString de NSRange;
restOfString.location = endRange.location + endRange.length;
restOfString.length = [longitud] del texto - restOfString.location;
startRange = [texto rangeOfString:start opciones: 0 rango: restOfString];
}
otra cosa
{
rotura;
}
}
otra cosa
{
rotura;
}
}
() NSLog
volver cuerdas;
}
La llamé así:
NSMutableArray * títulos = [[NSMutableArray alloc] init];
títulos = [stringsBetweenString del uno mismo: clase = \ "name\" > "andString: andText:html];
NSMutableArray 'títulos' es la matriz que utilizo para 'atrapar' a los datos devueltos.
El argumento 'comienzo' es la tapa principal de tus datos. El argumento de 'final' es, adivinaron, la tapa que se arrastra de sus datos. 'texto' será la cadena 'html' que tenes en el sitio web que tiene los datos html encapsulados en él. Si todo va bien, ahora tienes un NSMutableArray de los datos. La matriz se imprime en la consola para su conveniencia. En mi foto de ejemplo sólo un cierre el día que construí la aplicación, es que por qué sólo hay una entrada. Si hubiera varios cierres, entonces sería varias filas en la tabla y elementos de la matriz. ¡ Pero espere! ¡ Hay más!
Nota rápida: ¿por qué el \ antes de las citas en la cadena de inicio? El compilador producirá errores si no haces esto, ya que no puede diferenciar entre las citas al principio y al final de su cadena y las citas en la cadena. Si el casquillo tiene citas, entonces añadir un \ ante ellos que Xcode sepan que son parte del texto.