【问题标题】:Getting the HTML source code of a loaded UIWebView [duplicate]获取加载的 UIWebView 的 HTML 源代码 [重复]
【发布时间】:2011-07-07 05:43:23
【问题描述】:

如何获取UIWebViewHTML 源代码并将其存储在NSString 中?

【问题讨论】:

  • 你到底想问什么?
  • 我已经在我的 uiwebview 中打开了 google.com,现在我想获取在 uiwebview 中打开的网站的 html 源代码......基本上我需要
    中的操作值
  • 两个问题有区别,我的问题是如何从 UIWebView 读取 HTML,其中 HTML 是预加载的,而其他问题是在加载到 WebView 之前读取 HTML

标签: html objective-c uiwebview


【解决方案1】:

如果你想要一个已经加载的webview的源代码,你可以这样获取:

    NSString *yourHTMLSourceCodeString = [webView stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML"];

更新: 上述方法大部分时间都有效。但我最近遇到了一种情况,我需要所有代码源,而不仅仅是正文。

这里有一个更好的方法:

    NSString *yourHTMLSourceCodeString = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.outerHTML"];       

(它不会重新加载 webview)。

【讨论】:

  • outerHTML +1。对我帮助很大!
  • 如何在网页视图中再次加载此字符串
【解决方案2】:

我不确定你到底需要什么............但根据你最后的评论,你会像这样从谷歌获得 html 数据......

     NSData *companyData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.google.com"]];
     NSString *responseString = [[NSString alloc] initWithData:companyData encoding:NSUTF8StringEncoding];

    self.yourTextView.text = responseString; // response string contains that data
    [companyData release];

祝你好运!

【讨论】:

  • 我想这里的问题是使用dataWithContentsOfURL:需要再次检索网页数据,而不是从已经加载的UIWebView中提取
猜你喜欢
  • 2011-03-03
  • 2013-10-31
  • 1970-01-01
  • 2012-01-23
  • 2014-11-13
  • 1970-01-01
  • 1970-01-01
  • 2012-03-09
  • 2015-02-19
相关资源
最近更新 更多