لماذا يقوم موجز RSS الخاص بي بتكرار بعض الإدخالات؟

StackOverflow https://stackoverflow.com/questions/182615

  •  06-07-2019
  •  | 
  •  

سؤال

عند قراءة موجز RSS الخاص بي باستخدام قارئ موجز Thunderbird، يتم تكرار بعض الإدخالات.قارئ جوجل ليس لديه نفس المشكلة.

وهنا التغذية الخاطئةhttp://plcoder.net/rss.php?rss=Blog

هناك مشكلة ولكن أين؟

التحيات ، سيدريك

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

خاتمة :لقد قمت بإعادة العمل بالكامل على كود مولد RSS، ولا بأس.أعتقد أنني كنت أستخدم إصدارًا قديمًا جدًا من RDF.

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

المحلول

وحاول إضافة علامة <guid> إلى كل بند، ويعطيها الثابت. أي بمعنى:.

<item rdf:about="http://plcoder.net/?doc=2134&amp;amp;titre=mon-pc-se-la-pete">
  <link>http://plcoder.net/?doc=2134&amp;amp;titre=mon-pc-se-la-pete</link>
  <guid>http://plcoder.net/?doc=2134&amp;amp;titre=mon-pc-se-la-pete</guid>
  ...
</item>

ودون GUID، إذا كان أي من المحتوى في آخر التغييرات، قد مجمع RSS الخاصة بك يعتقدون أنها هي وظيفة جديدة. مع GUID، حتى لو كان مضمون هذا البند التغييرات، مجمع RSS الخاصة بك يجب مجرد تحديث آخر، بدلا من التعامل معها كبند جديد.

نصائح أخرى

وعلى الأقل مع ثندربيرد 2.0.0.21 المشكلة هي أن TBird لا يبدو أن تحترم GUID-علامات ولكن لا احترام <م> القناة pubDate العلامة. وبالتالي إذا pubDate هو أكثر حداثة من مع القراءة السابقة، سوف TBird قراءة <م> جميع إدخالات (على ما يبدو).

وأنا لا أعرف ماذا سيحدث لو pubDate العلامة قناة مفقود على الرغم من ...

ولقد شهدت هذه القضايا مع بعض الأعلاف الخاصة. ما حدث هو أنني تبدأ مع قائمة إدخالات مثل هذا:

Item A
Item B
Item C

والعميل بتحميل لهم وكل شيء على ما يرام. ثم أود أن أضيف عنصر جديد، وبالتالي فإن تغذية يقرأ على النحو التالي:

Item D
Item A
Item B

وD يظهر في القارئ.

ولكن بعد ذلك أقرر أنا لا أريد هذا البند، وبالتالي فإن القائمة يعود إلى:

Item A
Item B
Item C

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

والحل ينضب الطويل هو "تذكر" ما العناصر التي قد نشرت بالفعل، ومنذ ذلك الحين دفعت قبالة نهاية القائمة من قبل عناصر جديدة. سوف تحتاج أساسا للحفاظ على القائمة الحالية من العناصر في الأعلاف وعند حذف العناصر من ذلك، فاقطعها حتى هناك بنود جديدة لتحل محلها.

تم شرح ذلك في وثائق ثندربيرد (ضمن "الأسئلة الشائعة حول استكشاف الأخطاء وإصلاحها"):

س:لماذا تتكرر رسائل الخلاصة في بعض الأحيان؟

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

المنشور المرتبط للرجوع إليه:

  1. تحتوي خلاصات Atom (إلزامية) على معرف فريد؛عادةً ما تحتوي خلاصات Rss (غير الإلزامية) على دليل فريد.بالنسبة إلى خلاصات RSS بدون GUID ، يتم إجراء محاولة لإنشاء معرف فريد من أجزاء إلزامية من عنصر التغذية.
  2. تحتوي جميع رسائل التغذية التي تم تنزيلها على سجل مع هذا المعرف المخزّن في FeedItems.rdf ووجود هناك طالما وجودها في ملف الناشر ، مع هذا المعرف.إذا قام الناشر بإزالة رسالة بالمعرف من ملفه ، بعد 24 ساعة ، يتم أيضًا تطهير ذاكرة التخزين المؤقت لـ FeedItems.RDF (على Get Get Messages Biff).
  3. إذا أعاد الناشر استخدام المعرف بعد إزالته، فسوف تحصل على نسخة مكررة (إذا كان المحتوى متطابقًا).هذا إساءة استخدام للقصد وراء معرفات فريدة وخطأ الناشر.
  4. إذا قام أحد الناشر بإعادة استخدام معرف قبل تطهيره ، وكان المحتوى مختلفًا ، فلن ترى المحتوى الجديد ، حيث سيتم التعامل معه على أنه مكرر.لا يستخدم Thunderbird العلامة حاليًا وسوء استخدامها من قبل الناشرين قد يجعل من الصعب تنفيذها.
  5. إذا قمت بعرض المصدر (Ctrl-U) لاثنين من الخدع الواضحة، فسوف تلاحظ رأس معرف الرسالة.إذا كان لدى اثنين من الغوص الظاهر قيمًا مختلفة لمعرف الرسائل ، فهما لا يكونون خداعًا بغض النظر عن المحتوى المتطابق المحتمل.السل لا يميز المحتوى المكرر.

إذا كنت تريد تصحيح الأخطاء الشديدة ، فقم بتغيير feeds.logging.console pref لتصحيح أو تتبع وإعادة تشغيل ، لمعرفة ما يحدث أثناء معالجة الأعلاف.

إذا قمت بإلغاء الاشتراك في عنوان URL للتغذية ، فسيؤدي ذلك إلى مسح ذاكرة التخزين المؤقت لـ FeedItems.RDF لهذا التغذية.إذا قمت بإعادة الاشتراك لاحقًا ، فسوف تحصل على خداع لجميع العناصر الحالية في ملف الناشر الموجود أيضًا في مجلد التغذية الخاص بك.

لا يوجد تأثير على معالجة التغذية ، فهو يزيل فقط علامة الحذف من الملف.إذا قمت بحذف مجلد/نقله إلى القمامة ، فهو غير مؤهل.بدءًا من TB29 ، إذا قمت بسحب/إسقاط مجلد من Asount Feed إلى حساب تغذية آخر ، يتم الاحتفاظ بالاشتراك (ولكن ليس FeedItems).بالنسبة لمحات/حسابات التغذية القديمة جدًا (Pre TB17) ، يمكن أن يكون من الجيد إنشاء حساب تغذية جديد ومجلدات السحب هناك (TB29 وما فوق) ، حيث يتم إنشاء قاعدة بيانات جديدة.العقوبة هي احتمال خداع لمرة واحدة.

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

http://feedproxy.google.com/juanformoso

وثندربيرد لديها عدد قليل من البق مع تكرار إدخالات الأعلاف، وربما انها مجرد واحد منهم تظهر؟

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