मैं SyndicationFeed
कक्षा का उपयोग करके एक साधारण आरएसएस रीडर बनाने की कोशिश कर रहा हूं।एक साधारण आरएसएस रीडर बनाना, सामग्री को पुनर्प्राप्त करना
कुछ मानक टैग हैं, जैसे <title>
, <link>
, <description>
... उनके साथ कोई समस्या नहीं है।
लेकिन कुछ अन्य टैग हैं। उदाहरण के लिए, this feed में, जो वर्डप्रेस द्वारा बनाया गया है, <content:encoded>
टैग है। मुझे लगता है कि अन्य वेबसाइटों के सामग्री भाग के लिए अन्य टैग भी हो सकते हैं। सही?
मैं जानना चाहता हूं कि प्रत्येक पोस्ट की मुख्य सामग्री कैसे प्राप्त करें, क्या कोई मानक है? मुझे किस टैग की तलाश करनी चाहिए?
(उदाहरण के लिए, एक साइट <content:encoded>
उपयोग कर सकते हैं लेकिन कुछ अन्य बस <description>
का उपयोग करें या किसी अन्य मानक का उपयोग करें ... मैं क्या मुख्य एक पोस्ट की सामग्री को पुन: प्राप्त करने के लिए क्या करने के लिए पता नहीं है)
पीएस: मैं अपने सरल आरएसएस पाठक का परीक्षण करने के लिए इस कोड का उपयोग कर रहा हूं:
var reader = XmlReader.Create("http://feed.2barnamenevis.com/2barnamenevis");
var feed = SyndicationFeed.Load(reader);
string s = "";
foreach (SyndicationItem i in feed.Items)
{
s += i.Title.Text + "<br />" + i.Summary.Text + "<br />" + i.PublishDate.ToString() + "<br />";
foreach (SyndicationElementExtension extension in i.ElementExtensions)
{
XElement ele = extension.GetObject<XElement>();
s += ele.Name + " :: " + ele.Value + "<br />";
}
s += "<hr />";
}
return s;
आप जो समर्थन करना चाहते हैं उस पर निर्भर करता है। सामग्री तत्व आरएसएस 2.0 का हिस्सा नहीं है लेकिन एटम (आरएसएस 4287) है। आरएसएस 2.0 चश्मा पढ़ें http://cyber.law.harvard.edu/rss/rss.html#hrelementsOfLtitemgt –
पिछली बार मैंने एक आरएसएस पाठक लिखने की कोशिश की, अंत में मुझे एहसास हुआ कि वहां बड़ी संख्या में फ़ीड किसी भी मानकों का पालन न करें। फ़ीड्स पढ़ने की बात आने पर वहां के प्रमुख पाठकों को बहुत क्षमा करना चाहिए। मैं इसे वेबपृष्ठों को पढ़ने वाले ब्राउज़र की तरह दिखता हूं - यदि लोग मानकों का पालन करते हैं, तो कोई समस्या नहीं है, लेकिन यदि नहीं, तो आप एक-एक-एक परिदृश्य को संभालने के लिए पूरे दिन कस्टम सामान लिखेंगे। –
@ जोएनोस अन्य फ़ीड रीडर एप्लिकेशन क्या करता है? वे हर फ़ीड पढ़ सकते हैं। वे ऐसा कैसे करते हैं ?! –