Question

Quel est le moyen le plus efficace pour déterminer le nombre de commentaires d'un billet de blog particulier a?Nous voulons pour stocker les données d'une nouvelle application web.Nous avons une liste d'permalien URl ainsi que le flux RSS.

Était-ce utile?

La solution

Si je comprends bien, vous voulez une heuristique pour estimer le nombre de commentaires dans une page HTML qui est connu pour être un blog, oui?

Très souvent, un blog va avoir certaines caractéristiques qui le rendent facile à travailler.Si vous regardez la mienne sur à http://kstruct.com/ vous verrez que toutes les pages avec des commentaires qui disent " X Réponses, donc si vous étiez en mesure de faire un peu de travail sur un blog de base, c'est probablement pas vraiment difficile.

Si vous besoin de quelque chose de générique, je suppose qu'il ya quelques caractéristiques communes que les commentaires que vous pourriez être en mesure de détecter.Pour l'un, tous les liens sont tout à fait susceptibles d'avoir rel="nofollow" attributs, afin de voir qu'au sein d'un bloc pourrait laisser entendre que c'est un commentaire.

La principale chose intéressante à regarder pour les variations dans la structure de postes pour m le même site.Par exemple, il y a aussi une très bonne chance que chaque commentaire doit avoir son propre point d'ancrage de sorte que les gens peuvent accéder directement à elle, alors vous pourriez regarder les différents nombres de <a name="XXX"> balises dans une page donnée sur le même site pour avoir une idée du nombre relatif de commentaires.

Comme Michael Stum souligné, si les pages ont un Commentaire-flux RSS, votre vie est beaucoup plus facile parce que vous pouvez obtenir le commentaire des données dans un format structuré.

Dans l'ensemble, cependant, je pense que ça va être tout un problème difficile à résoudre en général.

Autres conseils

Si le blog est contrôlée par vous, un "Select count(commentid) à PARTIR de commentaires OÙ postID = 2" sera peut-être la meilleure chose.Si vous n'avez que l'URL mais c'est toujours votre blog/db, vous devez créer une sous-requête "OÙ postID = (SELECT quoi que DE postes OÙ permalien = url)" ou quel que soit votre moyen de rejoindre les commentaires pour les postes à partir d'une URL.

Si c'est un blog à distance, vous avez le problème que chaque blog est différent HTML.Essentiellement, vous allez avoir besoin de construire un analyseur qui analyse le code HTML et regarde pour la répétition d'éléments comme des "div class=commentaire".Mais ce sera surtout un travail manuel pour chacun des différents blogs.

Certains blogs peuvent avoir la meilleure manière d'un nombre de commentaires, quelque part dans le code HTML ou une interface, mais je ne suis pas au courant de toute façon standardisée.

EDIT:Si vous avez un Commentaire-flux RSS, vous peut avoir de la chance en utilisant un mécanisme qui compte les nœuds XML, comme XPath de l' Le comte.

Les Blogs ont presque toujours un flux RSS pour les commentaires.Si vous avez, alors vous pouvez déterminer le nombre exact de commentaires, car le flux de 99% du temps standard.Même si le blog est le vôtre, si vous êtes déjà à la génération d'un flux RSS, alors ne vous embêtez pas à faire appel à votre DB.Vous l'avez déjà fait pour générer le flux rss, il est donc logique que vous serait tout simplement parcourir les nœuds XML.De cette façon, vous n'avez pas de traitement supplémentaire (en fonction de combien de fois vous voulez obtenir cette information).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top