I have imported some stock market data from a website but I am having problems in separating them. In a part of the code it's working fine, but just at the end it is not. Here is the code:
NSURL *url = [NSURL URLWithString:@"http://www.bloomberg.com/quote/USIM5:BZ"];
NSData *webData = [NSData dataWithContentsOfURL:url];
//NSString *xPathQuery = @"//h3[@class=''] |//span[@class=' price'] | //span[@class=' trending_up up'] | //span[@class=' trending_up up']/span | //table[@class='snapshot_table']/tr/th | //table[@class='snapshot_table']/tr/td";
NSString *xPathQuery = @"//span[@class=' price'] | //span[@class=' trending_up up'] | //span[@class=' trending_up up']/span | //table[@class='snapshot_table']/tr/td";
TFHpple *parser = [TFHpple hppleWithData:webData isXML:NO];
NSArray *array = [parser searchWithXPathQuery:xPathQuery];
valores = [[NSMutableArray alloc]init];
for (TFHppleElement *element in array) {
[valores addObject:[[element firstChild] content]];
}
novosValores = [[NSMutableArray alloc]init];
for (NSString *valuesDatum in valores) {
NSString *removeNewLine = [[valuesDatum componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]] componentsJoinedByString:@" "];
NSString *removeSpace = [removeNewLine stringByReplacingOccurrencesOfString:@" " withString:@""];
NSString *removeSpaceOne = [removeSpace stringByReplacingOccurrencesOfString:@" " withString:@""];
[novosValores addObject:removeSpaceOne];
}
NSLog(@"%@",novosValores);
valoresFinais = [[NSMutableArray alloc]init];
for (NSString *valuesDatum in novosValores) {
NSArray *val = [valuesDatum componentsSeparatedByString:@" - "];
[valoresFinais addObject:val];
}
NSLog(@"%@",valoresFinais);
infos = [[NSMutableArray alloc]init];
for (NSString *dados in valoresFinais) {
NSArray *arrayDados = [dados componentsSeparatedByString:@","];
[infos addObject:arrayDados];
}
NSLog(@"%@", infos);
}
The logs show me this:
2013-01-19 12:45:17.526 BloombergQuotes[1720:c07] (
"12.300",
"12.580",
"12.270 - 12.590",
"4,572,600",
"12.460",
"5.570 - 13.770",
"+7.82%"
)
2013-01-19 12:45:17.528 BloombergQuotes[1720:c07] (
(
"12.300"
),
(
"12.580"
),
(
"12.270",
"12.590"
),
(
"4,572,600"
),
(
"12.460"
),
(
"5.570",
"13.770"
),
(
"+7.82%"
)
)
2013-01-19 12:45:17.528 BloombergQuotes[1720:c07] -[__NSArrayI componentsSeparatedByString:]: unrecognized selector sent to instance 0x7434eb0
2013-01-19 12:45:17.529 BloombergQuotes[1720:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI componentsSeparatedByString:]: unrecognized selector sent to instance 0x7434eb0'
*** First throw call stack:
(0x2101012 0x11fae7e 0x218c4bd 0x20f0bbc 0x20f094e 0x2fbe 0x223817 0x223882 0x172a25 0x172dbf 0x172f55 0x17bf67 0x13ffcc 0x140fab 0x152315 0x15324b 0x144cf8 0x205cdf9 0x205cad0 0x2076bf5 0x2076962 0x20a7bb6 0x20a6f44 0x20a6e1b 0x1407da 0x14265c 0x215d 0x2085)
libc++abi.dylib: terminate called throwing an exception
(lldb)
So the first chunk of data is almost fine for what I need, except the 3rd and 5th line that I need to separate by the " - ". I did that and the result is the second chunk of data, but it returned me values connected by "," on the 3rd and 5th line. So I did again separated by "," and that's where the error comes.
So, what I need is the contents of the first chunk of data all separated.
Any help would be appreciated..
Thanks!!!