我正在尝试用很多表解析HTML页面。我在网上搜索了如何用Objective C解析HTML,我发现了hpple。我会找一个导致我的教程:
http://www.raywenderlich.com/14172/how-to-parse-html-on-ios
通过本教程,我尝试解析一些论坛新闻,其中包含来自此站点的大量表格(希伯来语):news forum
我试图解析新闻标题,但我不知道在我的代码中写什么。每当我试图达到我得到的路径时,“节点就是零。”
我最近尝试的代码是:
NSURL *contributorsUrl = [NSURL URLWithString:@"http://rotter.net/cgi-bin/listforum.pl"];
NSData *contributorsHtmlData = [NSData dataWithContentsOfURL:contributorsUrl];
// 2
TFHpple *contributorsParser = [TFHpple hppleWithHTMLData:contributorsHtmlData];
// 3
NSString *contributorsXpathQueryString = @"//body/div/center/center/table[@cellspacing=0]/tbody/tr/td/table[@cellspacing=1]/tbody/tr[@bgcolor='#FDFDFD']/td[@align='right']/font[@class='text15bn']/font[@face='Arial']/a/b";
NSArray *contributorsNodes = [contributorsParser searchWithXPathQuery:contributorsXpathQueryString];
// 4
NSMutableArray *newContributors = [[NSMutableArray alloc] initWithCapacity:0];
for (TFHppleElement *element in contributorsNodes) {
// 5
Contributor *contributor = [[Contributor alloc] init];
[newContributors addObject:contributor];
// 6
有人可以指导我获取标题吗?
答案 0 :(得分:0)
不确定这是否适合您,但如果需要的表具有唯一ID,您可以使用凌乱的方法:将html加载到UIWebView并通过– stringByEvaluatingJavaScriptFromString:获取内容,如下所示:
// desired table container's id is "msg"
NSString* value = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementById('msg').innerHTML"];