gpt4 book ai didi

iPhone:如何下载完整的网站?

转载 作者:行者123 更新时间:2023-12-03 20:16:50 26 4
gpt4 key购买 nike

您建议我采用什么方法将网站(包含所有包含图像的一个 HTML 网站)下载到 iPhone?

问题是如何抓取所有这些微小的部分(Javascript、图像、CSS)并将它们保存在本地。这与具体实现无关(我知道如何使用 NSURLRequest 之类的东西。我正在寻找爬行/蜘蛛方法)。

越狱不起作用,因为它是针对官方(App Store)应用程序设计的。

问候,

斯特凡

最佳答案

正在下载?或者获取网站的 HTML 源代码并将其显示为 UIWebView

如果是最后,你可以简单地这样做:

NSString *data = [[NSString alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://apple.com"] encoding:NSUTF8StringEncoding error:NULL];

// Load UIWebView with data
[webView loadHTMLString:data baseURL:[NSURL URLWithString:@"http://apple.com"]];

编辑:对于这种方法,您可能最好使用 iPhone 的正则表达式库来解析字符串并查找所需的对象。

您可以使用这个:RegexKitLite ,然后执行几个正则表达式来查找,例如 <link rel="%" href="*">src="*" 。但您必须记住存储它们并将 * 的值替换为新路径。

存储文件:

您将从正则表达式方法中获取 url,并且您可以从 url 写入文件,如下所示:

NSFileManager *fileManager = [[NSFileManager alloc] init];
NSString rootPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString pathToCurrentSite = [rootPath stringByAppendingPathComponent:[NSString stringWithFormat:@"/%@/", fullUrlToPage]];
for (urlString in urlStrings) {
NSData *stringData = [NSData dataWithContentsOfURL:[NSURL URLWithString:urlString]];
[fileManager createFileAtPath:[pathToCurrentSite stringByAppendingPathComponent:urlString] contents:stringData attributes:nil];
}
NSString *data;
NSData *pageData = [data dataUsingEncoding:NSASCIIStringEncoding];
[fileManager createFileAtPath:[pathToCurrentSite stringByAppendingPathComponent:@"index"] contents:pageData attributes:nil];
[fileManager release];

关于iPhone:如何下载完整的网站?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3073132/

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