2010-02-11 10 views
35

में आरएसएस फ़ीड पार्सर लाइब्रेरी मैं अजगर में एक अच्छी लाइब्रेरी की तलाश में हूं जो मुझे आरएसएस फ़ीड का विश्लेषण करने में मदद करेगी। क्या किसी ने फीडपार्सर का इस्तेमाल किया है? कोई प्रतिपादन?पाइथन

+5

फीडपार्सर को डाउनलोड करने और कोशिश करने में 5 मिनट लगेंगे। –

+3

फीडपार्सर को डाउनलोड करने और कोशिश करने में केवल 5 मिनट लग सकते हैं, लेकिन एसओ पर दूसरों के रूप में हमें उपयोगी और भरोसेमंद राय बनाने में काफी समय लगेगा। उपयोग के 5 मिनट केवल साबित होंगे कि इसे मुख्य उपयोग के मामले को स्थापित और संभाला जा सकता है। – Trindaz

उत्तर

49

का उपयोग feedparser minidom या BeautifulSoup साथ अपने स्वयं के रोलिंग की तुलना में काफी बेहतर विकल्प है।

  • यह आरएसएस और एटम के सभी संस्करणों के बीच अंतर को सामान्य करता है ताकि आपके पास प्रत्येक प्रकार के लिए अलग-अलग कोड न हो।
  • फ़ीड में विभिन्न दिनांक स्वरूपों और अन्य विविधताओं का पता लगाने के बारे में अच्छा है।
  • यह स्वचालित रूप से HTTP रीडायरेक्ट का पालन करता है।
  • यह HTML सामग्री को स्वच्छ करता है।
  • इसमें ईटीएजी और अंतिम-संशोधित शीर्षलेखों के लिए समर्थन है ताकि आप देख सकें कि फ़ीड केवल HTTP शीर्षलेख डाउनलोड करके बदल गया है, न कि संपूर्ण फ़ीड।
  • इसमें प्रमाणीकृत फ़ीड के लिए समर्थन है।
  • इसमें HTTP प्रॉक्सी के लिए समर्थन है।

दूसरों की तरह उल्लेख किया गया है, बस इसे आजमाएं। यह फ़ीड को पार्स करने के लिए कोड की 2 लाइनों की तरह है। मेरी एकमात्र शिकायत यह है कि यह सिर्फ अपने डेटा मॉडल के रूप में शब्दकोशों का उपयोग करता है और यदि वे फ़ीड में नहीं थे तो कुछ विशेषताओं को शब्दकोश से गायब हो सकता है, इसलिए आपको अपने कोड में इसकी जांच करनी होगी। लेकिन दस्तावेज़ीकरण बहुत स्पष्ट है कि कौन सा गुण हमेशा शब्दकोश में होगा और जो गायब हो सकता है।

अंत में, मैं इसके लिए झुका सकता हूं, क्योंकि मैंने इसका उपयोग करने वाले एक एप्लिकेशन को लिखा है। यहां देखें: http://www.feednotifier.com/

+0

आपके उत्तर के लिए धन्यवाद! .. हाँ यह बहुत अच्छा और अच्छी तरह से परिभाषित दस्तावेज है! .. उपयोग करने में आसान है !! हालांकि आपका फ़ीड नोटिफ़ायर भी दिलचस्प है! –

+0

क्या आप ऐसी लाइब्रेरी के बारे में जानते हैं जो फीडपार्सर आउटपुट लेता है और इसे वापस फ़ीड में बदल सकता है? –

+0

वर्तमान में एक समस्या है जो मुझे परेशान कर रही है: फ़्लिकर फ़ीड्स में 'मीडिया:' तत्वों पर फीडपार्सर विफल हो रहा है। इससे वाकई बहुत गुस्सा आता है। मैंने अभी एक मुद्दा दायर किया है, आइए उम्मीद करते हैं कि मुझे जल्द ही कुछ कामकाज मिल जाएगा। – dguaraglia

1
+0

ठीक है, उन्होंने इस सवाल का जिक्र किया है ... –

+0

वैसे भी, क्या आपको लोगों को फीडस्पर्सर के अलावा अन्य कोई विचार है जो उपयोग करना आसान है? –

+0

@ rahman.bd no, feedparser बहुत अच्छा है, कोई भी विकल्प के बारे में परवाह नहीं करेगा। –

1

पर पहली हिट अपना फ़ॉलो के जवाब में। आप सुंदर सूप का उपयोग कर सकते हैं - लेकिन आरएसएस हैंडिंग की ओर फीडपार्सर बहुत बेहतर है।

स्नैंक नहीं करना - लेकिन क्या आपने फीडपार्सर्स documentation पढ़ा है? मुझे नहीं पता कि इसका उपयोग कैसे आसान हो सकता है।

+2

दूसरों के लाभ के लिए: मार्क पिलग्रीम द्वारा feedparser.org को हटा दिया गया है। मैं इसे अगली रिलीज के हिस्से के रूप में उपलब्ध कराऊंगा। –

0

यदि आप कोई विकल्प चाहते हैं, तो xml.dom.minidom आज़माएं। "डीजेगो पाइथन" की तरह, "आरएसएस एक्सएमएल है"।

+0

फीडपार्सर मौजूद होने पर इस दृष्टिकोण को लेने का कोई अच्छा कारण नहीं है। आपको आरएसएस और एटम, विकृत फीड्स, विभिन्न दिनांक/टाइमस्टैम्प प्रारूपों आदि के बीच मतभेदों को संभालना होगा। – FogleBird

10

Feedparser बहुत शक्तिशाली, कॉन्फ़िगर करने योग्य और उपयोग करने में आसान है। एक बहुत ही दोस्ताना सीखने की वक्र, बिल्कुल भी।

उदाहरण

प्रोग्राम के लगाता है कि कितने जवाब आपके सवाल है:

easy_install feedparser 
python -c 'import feedparser; print len(feedparser.parse("http://bit.ly/c785aj")["entries"])' 
+0

आप ["प्रविष्टियों"] के बजाय .entries का उपयोग कर सकते हैं क्योंकि फीडपार्सर एक अनुकूलित शब्दकोश का उपयोग करता है जो विशेषता पहुंच की अनुमति देता है। टाइप करने और पढ़ने के लिए आसान है। उदाहरण के लिए – FogleBird

+0

धन्यवाद। स्पष्टीकरण के लिए @FogleBird धन्यवाद। –

0

मैं दृढ़ता से फीडपार्सर की अनुशंसा करता हूं।

1

मुझे पता है कि यह एक बहुत पुराना विषय है, लेकिन इसके लायक होने के लिए, मैं फीडपार्सर (यूनिवर्सल फीड पार्सर) संस्करण 5.1.3 का उपयोग कर रहा था और मैंने हाल ही में प्रदर्शन कारणों से speedparser (0.1.8) पर स्विच किया था। इसमें बहुत अधिक इंटरफेस हैं, लेकिन तेजी से चलते हैं।

मैं इसे शौकिया Python-for-Android एप्लिकेशन के लिए उपयोग कर रहा हूं और स्पीडपार्सर मेरी फीड पर लगभग 5 गुना तेजी से चलता है।