web-dev-qa-db-ja.com

ロードされたUIWebViewのHTMLソースコードを取得する

HTMLUIWebViewソースコードを取得してNSStringに保存するにはどうすればよいですか?

26
Wasim A.

既にロードされているWebビューのソースコードが必要な場合は、次のように取得できます。

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

更新:上記の方法はほとんどの場合機能します。しかし、私は最近、体だけでなくすべてのコードソースが必要な状況にありました。

より良い方法は次のとおりです。

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

(ウェブビューはリロードされません)。

93
Guillaume

私はあなたが正確に何を必要とするのかわかりません..........しかし、あなたの最後のコメントに従って、あなたはこの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];

幸運を!

3
Sudhanshu