iphone - Retriving certain attributes from html with xcode -


मैं html पृष्ठ से href मान पाने की कोशिश कर रहा हूं

  NSURL * url = [ [SearchBar.text stringByReplacingOccurrencesofString: @ "" withString: @ "+"]]; NSString * html = [NSString stringWithContentOfURL: url एन्कोडिंग: NSASCIIStringEncoding त्रुटि: & NSLog त्रुटि (@ "एचटीएमएल =% @", एचटीएमएल);   

अब तक, कोड के इस बिंदु तक, यह यूट्यूब से html प्राप्त करने और खोज परिणामों के पहले पृष्ठ के लिए html प्रदर्शित करने के मामले में, पूरी तरह से काम कर रहा है।

अगली बात जो मैंने करने की कोशिश की वह कुछ अवांछित HTML टेंग्स को निकालने के लिए है, जैसे मुझे, की आवश्यकता नहीं है, आदि। मैं चाहता हूं कि सभी को छोड़ दिया जाए और उनके साथ टैग और उनके मान या डेटा हो। ।

इसलिए मैंने NSScanner और Regex का उपयोग करने की कोशिश की है। लेकिन मुझे वांछित परिणाम प्राप्त करने में असमर्थ हैं I अब जो कोड मैं कोशिश कर रहा हूं

  NSScanner * स्कैनर = [NSScanner scannerWithString: self]; [स्कैनर सेटकर्चरर्स टॉबेस्केप: शून्य]; NSMutableSet * टैग = [[एनएसएमयूटेबलसैट एलोक] इनट]; NSString * टैग; क्या {टैग = शून्य; [स्कैनर स्कैनअपटॉस्ट्रिंग: @ "& lt;" intoString: शून्य]; [स्कैनर स्कैनअपटॉस्ट्रिंग: @ "& gt;" intoString: & amp; टैग]; If (टैग) {NSString * t = [[NSString alloc] initWithFormat: @ "% @ & gt;", टैग]; [टैग जोड़ें ऑब्जेक्ट: टी]; }} जबकि (! [स्कैनर है एटएंड]); NSMutableString * परिणाम = [[NSMutableString alloc] initWithString: self]; NSString * अंतिम स्ट्रिंग; NSString * प्रतिस्थापन; के लिए (टैग में NSString * t) {replacement = @ ""; अगर ([टी isEqualToString: @ "& lt; a & gt;"]] [t isEqualToString: @ "& lt; / a & gt;"] [[टी isEqualToString: @ "& lt; span & gt;"]] [टी isEqualToString: @ "[टी isEqualToString: @" & lt; मजबूत & gt; "]] [टी isEqualToString: @" & lt; / strong & gt; "]] [टी isEqualToString: @" & lt; em & gt; " ] [टी isEqualToString: @ "& lt; / em & gt;"] [[टी isEqualToString: @ "& lt; स्क्रिप्ट & gt;"]] [टी isEqualToString: @ "& lt; / script & gt;"]) {replacement = ""; } [परिणाम की जगह ओकुर्रेंसऑफस्ट्रिंग: टी स्ट्रिंग के साथ: प्रतिस्थापन विकल्प: एनएस लिटरल सर्च मेकेंज (0, परिणाम। लम्बाई)]; } फाइनल स्ट्रिंग = [परिणाम स्ट्रिंगबयरेमिंग न्यूलाइन और वेबस्पेस];   

यह वह स्थान है जहां से मैंने इसे भेजा है लेकिन फिर भी मैं उसे जिस तरह से इसकी ज़रूरत है उसे काम करने के लिए नहीं मिल सकता.मैं एक ही समस्या पर कई दिनों तक फँस गया हूं, कृपया मेरी मदद करो.मैं यह करने के बारे में किसी भी सलाह से यह बहुत मददगार होगा। धन्यवाद अग्रिम।

आपकी सबसे अच्छी शर्त आपके लिंक्ड पोस्ट से श्रेणी को संशोधित करने के लिए होगी। उदाहरण के लिए यदि आप नहीं को & lt; a & gt; टैग को निकालना चाहते हैं, तो आप इस तरह से कोड को संशोधित कर सकते हैं:

इसे सम्मिलित करें से ऊपर लिखे गए फ़ाइल की 67 पंक्ति तक:

  यदि ([टी isEqualToString: @ "& lt; a & gt;"]] [t isEqualToString: @ "& lt; / a & gt;"]) जारी रखें ;   

और उस पंक्ति के अनुसरण में से & lt; a & gt; स्थितियों को हटा दें।

पढ़ने के लिए बेझिझक, विश्लेषण करें और उसके साथ खेलें जब तक आप जो कुछ भी प्राप्त न कर लेते हैं, तब तक आप इसे प्राप्त कर सकते हैं: ओपन सोर्स की दुनिया में सभी बेहतरीन चीजें यह है कि आप पहले से लिखित कोड से जो कुछ भी नहीं जानते उसे सब कुछ पढ़ सकते हैं।

Comments

Popular posts from this blog

Python SQLAlchemy:AttributeError: Neither 'Column' object nor 'Comparator' object has an attribute 'schema' -

java - How not to audit a join table and related entities using Hibernate Envers? -

mongodb - CakePHP paginator ignoring order, but only for certain values -