سؤال

أنا أستخدم مكتبة FeedParser في Python لاسترداد الأخبار من صحيفة محلية (نواياي هي القيام بمعالجة اللغة الطبيعية عبر هذه المجموعة) وترغب في أن تكون قادرا على استرداد العديد من الإدخالات السابقة من تغذية RSS.

أنا لست على علم بهذه القضايا الفنية الخاصة ب RSS، لكنني أعتقد أنه يجب أن يكون ذلك ممكنا (أستطيع أن أرى ذلك، على سبيل المثال، يمكن أن يقوم Google Reader ويمكنه أن يفعل هذا "" عند الطلب "" أثناء نقل Scrollbar).

عندما أقوم بما يلي:

import feedparser

url = 'http://feeds.folha.uol.com.br/folha/emcimadahora/rss091.xml'
feed = feedparser.parse(url)
for post in feed.entries:
   title = post.title

أحصل فقط على عشرات الإدخالات أو نحو ذلك. كنت أفكر في المئات. ربما جميع الإدخالات في الشهر الماضي، إن أمكن. هل من الممكن القيام بذلك فقط مع FeedParser؟

أعتزم الوصول من RSS Feed فقط الرابط إلى عنصر الأخبار وتحليل الصفحة الكاملة مع مجموعة جميلة للحصول على النص الذي أريده. سيكون الحل البديل مجنزرا يتبع جميع الروابط المحلية في الصفحة للحصول على الكثير من العناصر الأخبار، لكنني أريد تجنب ذلك الآن.

--

أحد الحلول التي ظهرت هي استخدام ذاكرة التخزين المؤقت ل Google Reader RSS:

http://www.google.com/reader/atom/feed/http://feeds.folha.uol.com.br/folha/emcimadahora/rss091.xml؟n=1000.

ولكن للوصول إلى هذا، يجب تسجيل الدخول إلى Google Reader. أي شخص يعرف كيف أفعل ذلك من بيثون؟ (أنا حقا لا أعرف شيئا عن الويب، وعادة ما أصفق فقط مع حساب التفاضل والتكامل العددي).

هل كانت مفيدة؟

المحلول

أنت تحصل فقط على عشرات الإدخالات أو نحو ذلك لأن هذا ما يحتوي عليه التغذية. إذا كنت تريد بيانات تاريخية، فسيتعين عليك العثور على موجز / قاعدة بيانات للبيانات المذكورة.

ألق نظرة على هذا readwriteweb المادة بالنسبة لبعض الموارد عند العثور على بيانات مفتوحة على الويب.

لاحظ أن FeedParser لا علاقة له بهذا كما يوحي العنوان الخاص بك. FeedParser يوزع ما تعطيه. لا يمكن العثور على بيانات تاريخية ما لم تجدها ونقلها إليها. انها ببساطة محلل. نأمل أن يدق الأمور! :)

نصائح أخرى

للتوسع في إجابة Bartek: يمكنك أيضا البدء في تخزين جميع الإدخالات في الخلاصة التي رأيتها بالفعل، وبناء أرشيفك التاريخي الخاص بمحتوى الأعلاف. سيؤدي ذلك إلى تأخير قدرتك على البدء في استخدامه كجور (نظرا لأنك يتعين عليك القيام بذلك لمدة شهر لبناء مجموعة من إدخالات شهرية)، لكنك لن تعتمد على أي شخص آخر للبيانات وبعد

قد أكون مخطئا، لكنني متأكد من أن هذا هو كيف يمكن ل Google Reader العودة في الوقت المناسب: لقد تم تخزين جميع الإدخالات السابقة لكل تغذية في مكان ما.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top