gpt4 book ai didi

iphone - 如何使用 iPhone SDK 从 url 中获取文本的特定部分?

转载 作者:行者123 更新时间:2023-11-29 04:17:26 24 4
gpt4 key购买 nike

在我的应用程序中,我有某个网页的 URL,我想通过识别 html 标签从该 URL(其 html 页面)仅获取特定部分。

例如,我想获取 <div id="content"> to </div> 的部分根据 html 源代码。这样我就可以将其保存到另一个文件中。

例如我的网址是http://www.makepartsfast.com/2012/09/4337/more-3d-printing-in-metals-ex-one-introduces-the-m-flex-3d-printing-system/ ,这会打开一个 html 页面。我只想要该页面的一部分。

我该怎么做?

谢谢..

最佳答案

这是 Cocoa+NSString 解决方案(工作+测试)。您会发现,当您使用这样的自定义解析器时,唯一真正的技巧是如何找到“结束”点。事实上,您不能直接转到“”,因为其他 div 在中间打开,因此您的解析器将在您要查找的内容结束之前停止。我显然并不是说没有其他方法可以使用更复杂的 XML 解析器来完成此任务。但是网页并不那么容易解析,它们的代码并不总是完美的......而且这很简单并且有效(您仍然应该考虑除 stringWithContentsOfURL: 之外的其他获取 URL 内容的方法:它不是异步的):

NSString *originalString = [NSString stringWithContentsOfURL:[NSURL URLWithString:@"http://www.makepartsfast.com/2012/09/4337/more-3d-printing-in-metals-ex-one-introduces-the-m-flex-3d-printing-system/"] encoding:NSUTF8StringEncoding error:nil];

NSScanner *scanner = [NSScanner scannerWithString:originalString];
NSString *extractedString = nil;

[scanner scanUpToString:@"<div id=\"content\">" intoString:nil];
[scanner scanString:@"<div id=\"content\">" intoString:nil];

[scanner scanUpToString:@"<div style=\"clear:both;\">" intoString:&extractedString];

if (extractedString)
{
// string was extracted
NSLog(@"%@", extractedString);
}

关于iphone - 如何使用 iPhone SDK 从 url 中获取文本的特定部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13488279/

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