Хотя я согласен, вы не должны использовать UIWebView
для этого.Чтобы ответить на ваш вопрос.
NSString *theHTML = [_webView stringByEvaluatingJavaScriptFromString:@"document.body.innerText"];
Прежде чем использовать это, я бы посоветовал вам использовать следующее решение, если это возможно.
NSString *theHTML = [NSString stringWithContentsOfURL:[NSURL URLWithString:url]];
ОБНОВЛЕНИЕ: Алан Зейно отметил, что используя 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];