gpt4 book ai didi

iphone - 当我在 iPhone 上使用 TFHpple 解析器 HTML 时,已经找到了节点,但是返回的内容是 NULL?

转载 作者:行者123 更新时间:2023-11-28 22:51:21 32 4
gpt4 key购买 nike

代码:

NSString *linkStr=@"http://www.voanews.com/content/obama_pledges_aid_to_drought_stricken_farmers/1484380.html";
NSData *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:linkStr]];

// Create parser
TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:data];

//Get all the cells of the 2nd row of the 3rd table
NSArray *elements = [xpathParser searchWithXPathQuery:@"//p[@class='article_date']"];

// Access the first cell
if ([elements count] > 0)
{
TFHppleElement *element = [elements objectAtIndex:0];

// Get the text within the cell tag
NSString *content = [element content];
NSLog(@"VOA = %@",content); //Result : print NULL
}


[xpathParser release];
[data release];

但我使用 XPath Helper 查询“//p[@class='article_date']”,没问题,但在我的代码中内容为空

最佳答案

运行您的代码示例,如果我将 [element content] 更改为 [element text],我的输出是:

VOA = August 11, 2012

In its Github repo ,他们提到(在USAGE部分):

[e text]; // The text inside the HTML element (the content of the first text node)

查看 CONTENT 方法的源代码,它使用 objectForKey,其中 TFHppleContentKey = "nodeContent"。见:

static NSString * const TFHppleNodeContentKey = @"nodeContent"

// Returns this tag's innerHTML content.
- (NSString *) content
{
return [node objectForKey:TFHppleNodeContentKey];
}

在您的示例中使用 [element text] 而不是 [element content] 似乎是安全的。

希望对你有帮助。

关于iphone - 当我在 iPhone 上使用 TFHpple 解析器 HTML 时,已经找到了节点,但是返回的内容是 NULL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11920530/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com