Frage

Wie lässt sich am effizientesten feststellen, wie viele Kommentare ein bestimmter Blog-Beitrag hat?Wir möchten die Daten für eine neue Web-App speichern.Wir haben eine Liste der Permalink-URLs sowie der RSS-Feeds.

War es hilfreich?

Lösung

Wenn ich das richtig verstehe, möchten Sie eine Heuristik, um die Anzahl der Kommentare auf einer HTML-Seite zu schätzen, bei der es sich bekanntermaßen um einen Blog-Beitrag handelt, ja?

Sehr oft verfügt ein bestimmter Blog über einige Funktionen, die das Training erleichtern.Wenn du dir meins ansiehst http://kstruct.com/ Sie werden sehen, dass auf allen Seiten mit Kommentaren „X-Antworten“ steht. Wenn Sie also in der Lage wären, pro Blog etwas zu tun, ist das wahrscheinlich nicht wirklich schwierig.

Wenn Sie etwas Allgemeines benötigen, denke ich, dass Kommentare einige gemeinsame Merkmale aufweisen, die Sie möglicherweise erkennen können.Zum einen verfügen alle darin enthaltenen Links höchstwahrscheinlich über rel="nofollow"-Attribute. Wenn man das also innerhalb eines Blocks sieht, könnte das bedeuten, dass es sich um einen Kommentar handelt.

Das Interessanteste, worauf man achten sollte, wären Änderungen in der Struktur der Beiträge für dieselbe Site.Es besteht beispielsweise auch eine sehr gute Chance, dass jeder Kommentar einen eigenen Anker hat, sodass die Leute direkt darauf verlinken können, sodass Sie auf derselben Seite die unterschiedliche Anzahl von <a name="XXX">-Tags sehen können Website, um eine Vorstellung von der relativen Anzahl der Kommentare zu bekommen.

Wie Michael Stum betonte, wird Ihr Leben viel einfacher, wenn die Seiten über einen Kommentar-RSS-Feed verfügen, da Sie die Kommentardaten in einem strukturierten Format erhalten können.

Alles in allem denke ich jedoch, dass die Lösung des Problems im Allgemeinen ziemlich schwierig sein wird.

Andere Tipps

Wenn der Blog von Ihnen kontrolliert wird, ist „Select count(commentid) FROM comments WHERE postID = 2“ möglicherweise das Beste.Wenn Sie nur die URL haben, es sich aber immer noch um Ihr Blog/Ihre Datenbank handelt, müssen Sie eine Unterabfrage „WHERE postID = (SELECT what FROM posts WHERE permalink = url)“ oder eine beliebige Methode erstellen, um die Kommentare zu den Beiträgen von einer URL aus zu verbinden.

Wenn es sich um ein Remote-Blog handelt, besteht das Problem, dass jedes Blog ein anderes HTML hat.Im Wesentlichen müssen Sie einen Parser erstellen, der den HTML-Code analysiert und nach sich wiederholenden Elementen wie „div class=comment“ sucht.Aber das wird für die einzelnen Blogs größtenteils eine manuelle Arbeit sein.

Einige Blogs verfügen möglicherweise über bessere Methoden, z. B. eine Kommentarzählung irgendwo im HTML-Code oder in einer Benutzeroberfläche, aber mir ist keine standardisierte Methode bekannt.

BEARBEITEN:Wenn Sie einen Kommentar-RSS-Feed haben, können Sie Mai Haben Sie Glück, wenn Sie einen Mechanismus verwenden, der XML-Knoten zählt, wie den von XPath? Zählen.

Blogs verfügen fast immer über einen RSS-Feed für Kommentare.Wenn Sie das haben, können Sie die genaue Anzahl der Kommentare bestimmen, da die Feeds in 99 % der Fälle einem Standard folgen.Auch wenn es sich bei dem Blog um Ihr eigenes handelt und Sie bereits einen RSS-Feed generieren, machen Sie sich nicht die Mühe, Ihre Datenbank anzurufen.Das haben Sie bereits getan, um den Feed zu generieren, daher ist es sinnvoll, dass Sie nur die XML-Knoten durchlaufen.Auf diese Weise entsteht kein zusätzlicher Aufwand (je nachdem, wie oft Sie diese Informationen erhalten möchten).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top