2011-03-02 3 views
26

का HTML स्रोत कोड प्राप्त करना मुझे HTMLUIWebView का स्रोत कोड कैसे प्राप्त करें और इसे NSString पर संग्रहीत करें?एक लोड किए गए UIWebView

+0

वास्तव में आप क्या पूछना चाहते हैं? – Swastik

+0

मैंने अपने यूईवेब्यूव में google.com खोल दिया है और अब मैं uiwebview में खोला गया वेबसाइट का एचटीएमएल स्रोत कोड प्राप्त करना चाहता हूं ... मूल रूप से मुझे

+0

http: // stackoverflow में कार्रवाई का मान आवश्यक है। com/प्रश्न/992,348/पढ़ने-एचटीएमएल जो सामग्री पर से एक UIWebView – rptwsthi

उत्तर

89

आप एक पहले से ही भरी हुई वेबव्यू के स्रोत कोड चाहते हैं, आप इसे इस तरह प्राप्त कर सकते हैं:

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

अद्यतन: विधि से ऊपर समय के सबसे अधिक काम करता है। लेकिन मैं हाल ही में एक ऐसी स्थिति में था जहां मुझे केवल शरीर के लिए सभी कोड स्रोत की आवश्यकता नहीं थी।

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

(यह वेबव्यू को फिर से लोड नहीं होगा):

यहाँ एक बेहतर तरीका है।

+8

+1। यह मुझे बहुत मदद करता है! 'वेब पेज डेटा की आवश्यकता है न कि पहले से ही भरी हुई UIWebView से निकाला जा रहा है फिर से प्राप्त किया जा करने के लिए,: – Jack

+2

वेब दृश्य में इस स्ट्रिंग लोड करने के लिए कैसे फिर से –

4

मुझे यकीन है कि आप वास्तव में क्या जरूरत है .......... लेकिन अपने अंतिम टिप्पणी के अनुसार आपको लगता है कि एचटीएमएल डेटा इस तरह गूगल से मिलेगा नहीं कर रहा हूँ ...

 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]; 

अच्छा भाग्य!

+2

मैं यहाँ समस्या लगता है कि' dataWithContentsOfURL उपयोग कर रहा है –