保存webView加载出来的图片至本地沙盒

- (void)webViewDidFinishLoad:(UIWebView*)webView{

NSArray*a=[selfgetAllImageLink];

for(NSString*strina) {

NSLog(@"图片网址%@",str);

NSURLCache*sharedCache = (NSURLCache*)[NSURLCachesharedURLCache];

NSURLSession*session = [NSURLSessionsharedSession];

NSURLSessionDataTask*task = [sessiondataTaskWithURL:[NSURLURLWithString:str]];

__blockNSString*wstr = str;

[sharedCachegetCachedResponseForDataTask:taskcompletionHandler:^(NSCachedURLResponse*_NullablecachedResponse) {

//在这里经图片保存进沙盒中SDWeb路径下

//NSString *path = [NSString stringWithFormat:@"/Users/xiaoyuliu/Desktop/abc/%@", [wstr lastPathComponent]];

//[cachedResponse.data writeToFile:path options:NSDataWritingAtomic error:nil];

}];

}

}

- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {

returnYES;

}

///获取所有图片链接

- (NSArray*)getAllImageLink

{

NSMutableArray*arrImgURL = [[NSMutableArrayalloc]init];

for(inti =0; i < [selfnodeCountOfTag:@"img"]; i++) {

NSString*jsString = [NSStringstringWithFormat:@"document.getElementsByTagName('img')[%d].src", i];

[arrImgURLaddObject:[self.webViewstringByEvaluatingJavaScriptFromString:jsString]];

}

returnarrImgURL;

}

///获取某个标签的结点个数

- (int)nodeCountOfTag:(NSString*)tag

{

NSString*jsString = [NSStringstringWithFormat:@"document.getElementsByTagName('%@').length", tag];

intlen = [[self.webViewstringByEvaluatingJavaScriptFromString:jsString]intValue];

returnlen;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容