我需要从网络上获取HTML。但是当我使用下面的代码时,它只显示带有Javascript的小HTML,而不是完整的最终HTML,我在网络浏览器上看到的。
我使用此代码:
NSString* urlString = @"http://mywebsite.com";
NSString* htmlString = [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString]];
使用AFNetworking时也会得到相同的结果。
如何获得完整的HTML?
答案 0 :(得分:1)
我已经回答了我的问题。我使用UIWebView加载此网页。完成委托后,我可以通过以下代码获得完整的HTML:
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
webview = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
[webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://example.com"]]];
webview.delegate = self;
[self.view addSubview:webview];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView {
NSString *yourHTMLSourceCodeString = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.outerHTML"];
NSLog(@"Did finish load: %@", yourHTMLSourceCodeString);
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {
}
@end