万方数据知识平台 TFHpple +Xpath解析

试了一下,基本上适合所有的检索结果。

– (void)viewDidLoad{[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.//获取数据NSURL *url=[NSURL URLWithString:@"?q=hiv"];NSURLRequest *request=[NSURLRequest requestWithURL:url];NSData *data=[NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];//解析数据TFHpple *hpple=[TFHpple hppleWithHTMLData:data];//XPATH字符串 越短越好,,但是要能过滤出符合要求的结果//xpath教程:NSString *xpathStr =@"//div/ul/li [@class='title_li'] /a [not(@class)]";//解析标题NSString *xpathStr2 =@"//div/ul/li [@class='zi'] ";//解析简介NSArray *arr=[hpple searchWithXPathQuery:xpathStr];NSArray *arr2=[hpple searchWithXPathQuery:xpathStr2];//NSLog(@"%@",arr2);//这个数组中就有需要的值alltilte=[[NSMutableArray alloc]init];alltext=[[NSMutableArray alloc]init];alltilte = [self SaveArry:arr];alltext = [self SaveAlltext:arr2];for(int i=0;i<alltilte.count;i++){NSLog(@"标题%@",alltilte[i]);NSLog(@"简介%@",alltext[i]);}[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Cell"];}-(NSMutableArray *)SaveAlltext :(NSArray *)_arry{for (TFHppleElement *tmp in _arry){NSString * string =[tmp raw];NSRange range;//NSRange range2;range = [string rangeOfString:@"<br />"];string = [string substringToIndex:range.location];NSString *temp =[string stringByReplacingOccurrencesOfString:@"<li class=\&;zi\&;>"withString:@""];temp =[temp stringByReplacingOccurrencesOfString:@"<font color=\&;red\&;>"withString:@""];temp =[temp stringByReplacingOccurrencesOfString:@"</font>"withString:@""];temp =[temp stringByReplacingOccurrencesOfString:@"<li class=\&;zi\&;>"withString:@""];[alltext addObject:temp];}return alltext;}-(NSMutableArray *)SaveArry: (NSArray *)_arry{for (TFHppleElement *tmp in _arry){NSString * string =[tmp raw];NSRange range;NSRange range2;range = [string rangeOfString:@"</a>"];string = [string substringToIndex:range.location];NSString *temp =[string stringByReplacingOccurrencesOfString:@"<font color=\&;red\&;>" withString:@""];temp=[temp stringByReplacingOccurrencesOfString:@"</font>" withString:@""];range = [string rangeOfString:@">"];range2 = [string rangeOfString:@"img"];if(range.length!=0&&range2.length==0){string = [temp substringFromIndex:range.location+1];[alltilte addObject:string];}}return alltilte;}

若不给自己设限,则人生中就没有限制你发挥的藩篱。

万方数据知识平台 TFHpple +Xpath解析

相关文章:

你感兴趣的文章:

标签云: