虽然我同意你不应该使用UIWebView
做到这一点。回答你的问题。
NSString *theHTML = [_webView stringByEvaluatingJavaScriptFromString:@"document.body.innerText"];
在你使用之前,我建议你尽可能使用下面的解决方案。
NSString *theHTML = [NSString stringWithContentsOfURL:[NSURL URLWithString:url]];
UPDATE: 艾伦Zeino指出,使用stringWithContentsOfURL:
不是很理想。所以我提供了另一种异步的解决方案。我的解决方案假定一切都会工作你必须实现错误处理和数据重用机制。
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
// self.data is a NSMutableData property
[self.data appendData:data];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
NSString *theHTML = [[[NSString alloc] initWithData:self.data encoding:NSASCIIStringEncoding] autorelease];
self.data = nil;
// TODO: Its up to you now how you want to handle the HTML.
}
要执行请求,请使用此操作。
NSURLRequest *theURLRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:url]];
NSURLConnection *theURLConnection = [[[NSURLConnection alloc] initWithRequest:theURLRequest delegate:self startImmediately:YES] autorelease];
100%同意这一点。在这种情况下使用UIWebView非常糟糕。 ASIHttpRequest是前进的方向。 – 2011-04-20 08:20:24
我结束了这个解决方案。感谢所有的帮助。 – fuzz 2011-04-21 14:40:18