作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要从网络中获取 HTML。但是当我使用下面的代码时,它只显示带有 Javascript 的小 HTML,而不是我在网络浏览器上看到的完整的最终 HTML。
我使用这段代码:
NSString* urlString = @"http://mywebsite.com";
NSString* htmlString = [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString]];
当我使用 AFNetworking 时,它也会得到相同的结果。
如何获得完整的 HTML?
最佳答案
我的问题已经有了答案。我使用 UIWebView 加载此网页。在完成委托(delegate)时,我可以通过以下代码获得完整的 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
关于html - 如何在 iOS 上获取最终的 HTML 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27871829/
我是一名优秀的程序员,十分优秀!