2008-09-06 5 views

Antwort

2

Wenn ich richtig verstehe, möchten Sie eine Heuristik, um die Anzahl der Kommentare in einer HTML-Seite zu schätzen, die bekanntermaßen ein Blog-Post ist, ja?

Sehr oft wird ein bestimmter Blog einige Funktionen haben, die es einfach machen, zu trainieren. Wenn Sie sich meinen Bericht unter http://kstruct.com/ ansehen, werden Sie feststellen, dass auf allen Seiten mit Kommentaren "X-Antworten" angegeben sind. Wenn Sie also auf Blogbasis arbeiten konnten, ist das wahrscheinlich nicht wirklich schwierig.

Wenn Sie etwas generisches benötigen, denke ich, es gibt ein paar gemeinsame Funktionen, die Kommentare haben, die Sie möglicherweise erkennen können. Zum einen haben Links in ihnen ziemlich wahrscheinlich rel = "nofollow" -Attribute, so dass man innerhalb eines Blocks sehen kann, dass es ein Kommentar ist.

Die wichtigste interessante Sache zu suchen wäre Änderungen in der Struktur der Beiträge für m die gleiche Website. Zum Beispiel gibt es auch eine sehr gute Chance, dass jeder Kommentar seinen eigenen Anker hat, so dass Leute direkt mit ihm verlinken können, so dass Sie die unterschiedlichen Nummern von < a name = "XXX" > Tags in einer gegebenen Seite auf demselben sehen können um eine Vorstellung von der relativen Anzahl der Kommentare zu bekommen.

Als Michael Stum darauf hingewiesen, wenn die Seiten einen Kommentar-RSS-Feed haben, wird Ihr Leben viel einfacher gemacht, weil Sie die Kommentardaten in einem strukturierten Format erhalten können.

Alles in allem denke ich, es wird ein ziemlich herausforderndes Problem sein, im Allgemeinen zu lösen.

4

Wenn der Blog von Ihnen gesteuert wird, ist ein "Select count (commenteid) VON Kommentaren WHERE postID = 2" möglicherweise das Beste. Wenn Sie nur die URL haben, aber immer noch Ihr Blog/db, müssen Sie eine Unterabfrage erstellen "WHERE postID = (SELECT was auch immer FROM posts WHERE permalink = url)" oder wie auch immer Sie den Kommentaren zu den Posts von einer URL beitreten.

Wenn es sich um ein Remote-Blog handelt, haben Sie 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 meistens eine Handarbeit für jeden einzelnen Blog sein.

Einige Blogs haben vielleicht bessere Möglichkeiten, wie ein Kommentar irgendwo im HTML oder irgendeiner Schnittstelle zu zählen, aber ich kenne keinen standardisierten Weg.

EDIT: Wenn Sie einen Kommentar-RSS-Feed haben, können Sie haben Glück mit einem Mechanismus, der XML-Knoten zählt, wie XPath Count.

0

Blogs haben fast immer einen RSS-Feed für Kommentare. Wenn Sie das haben, dann können Sie die genaue Anzahl der Kommentare ermitteln, da die Feeds zu 99% der Zeit einem Standard folgen. Selbst wenn der Blog Ihr eigener Blog ist, wenn Sie bereits einen RSS-Feed generieren, sollten Sie sich nicht um Ihre DB kümmern. Sie haben das bereits getan, um den Feed zu generieren. Daher ist es sinnvoll, dass Sie einfach die XML-Knoten durchlaufen. Auf diese Weise haben Sie keinen zusätzlichen Aufwand (abhängig davon, wie oft Sie diese Informationen erhalten möchten).

Verwandte Themen