تحديد عدد التعليقات التي تتضمنها مشاركة المدونة برمجيًا

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

  •  09-06-2019
  •  | 
  •  

سؤال

ما هي الطريقة الأكثر فعالية لتحديد عدد التعليقات التي تتضمنها مشاركة مدونة معينة؟نريد تخزين البيانات لتطبيق ويب جديد.لدينا قائمة بعناوين URL للرابط الثابت بالإضافة إلى خلاصات RSS.

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

المحلول

إذا فهمت بشكل صحيح، فأنت تريد إرشاديًا لتقدير عدد التعليقات في صفحة HTML المعروفة بأنها منشور مدونة، أليس كذلك؟

في كثير من الأحيان، تحتوي مدونة معينة على بعض الميزات التي تجعل من السهل العمل عليها.إذا نظرت إلى الألغام في http://kstruct.com/ سترى أن جميع الصفحات التي تحتوي على تعليقات مكتوب عليها "X Responses"، لذا إذا كنت قادرًا على القيام ببعض الأعمال على أساس كل مدونة، فمن المحتمل ألا يكون الأمر صعبًا حقًا.

إذا كنت بحاجة إلى شيء عام، أعتقد أن هناك بعض الميزات المشتركة التي تتضمنها التعليقات والتي قد تتمكن من اكتشافها.أولاً، من المحتمل جدًا أن تحتوي أي روابط فيها على سمات rel = "nofollow"، لذا فإن رؤية ذلك داخل الكتلة قد يعني ضمنًا أنه تعليق.

الشيء الرئيسي المثير للاهتمام الذي يجب البحث عنه هو التغييرات في بنية المنشورات لنفس الموقع.على سبيل المثال، هناك أيضًا احتمال كبير جدًا أن يكون لكل تعليق مرساة خاصة به حتى يتمكن الأشخاص من الارتباط به مباشرةً، لذا يمكنك الاطلاع على الأعداد المختلفة لعلامات <a name="XXX"> في صفحة معينة في نفس الصفحة الموقع للحصول على فكرة عن الأعداد النسبية للتعليقات.

كما أشار مايكل ستوم، إذا كانت الصفحات تحتوي على موجز RSS للتعليقات، فستصبح حياتك أسهل كثيرًا لأنه يمكنك الحصول على بيانات التعليقات بتنسيق منظم.

بشكل عام، على الرغم من ذلك، أعتقد أن حل المشكلة بشكل عام سيكون أمرًا صعبًا للغاية.

نصائح أخرى

إذا كنت تتحكم في المدونة، فمن المحتمل أن يكون الخيار "Select count(commentid) FROM comments WHERE postID = 2" هو أفضل شيء.إذا كان لديك عنوان URL فقط ولكنه لا يزال مدونتك/قاعدة البيانات الخاصة بك، فستحتاج إلى إنشاء استعلام فرعي "WHERE postID = (SELECT مهما كان من المشاركات WHERE permalink = url)" أو أيًا كانت طريقتك لضم التعليقات إلى المنشورات من عنوان URL.

إذا كانت مدونة بعيدة، فستواجه مشكلة أن كل مدونة لها HTML مختلف.ستحتاج في الأساس إلى إنشاء محلل تحليلي يقوم بتحليل HTML والبحث عن العناصر المتكررة مثل "div class=comment".ولكن هذا سيكون في الغالب عملاً يدويًا لكل مدونة مختلفة.

قد تحتوي بعض المدونات على طرق أفضل مثل عدد التعليقات في مكان ما في HTML أو في بعض الواجهات، لكنني لست على علم بأي طريقة موحدة.

يحرر:إذا حصلت على موجز RSS للتعليقات، فإنك يمكن حظًا سعيدًا باستخدام آلية تحسب عقد XML، مثل XPath عدد.

تحتوي المدونات دائمًا تقريبًا على موجز RSS للتعليقات.إذا كان لديك ذلك، فيمكنك تحديد العدد الدقيق للتعليقات، نظرًا لأن الخلاصات تتبع معيارًا في 99% من الوقت.حتى لو كانت المدونة خاصة بك، إذا كنت تقوم بالفعل بإنشاء موجز RSS، فلا تكلف نفسك عناء الاتصال بقاعدة البيانات الخاصة بك.لقد فعلت ذلك بالفعل لإنشاء الخلاصة، لذا فمن المنطقي أن تقوم فقط باجتياز عقد XML.بهذه الطريقة لن يكون لديك أي نفقات إضافية (اعتمادًا على عدد المرات التي تريد فيها الحصول على هذه المعلومات).

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