0

确定特定博客帖子有多少评论的最有效方法是什么?我们想为一个新的网络应用程序存储数据。我们有一个永久链接 URL 和 RSS 提要的列表。

4

3 回答 3

4

如果博客由您控制,“从评论中选择计数(评论 ID),其中 postID = 2”可能是最好的选择。如果您只有 URL,但它仍然是您的博客/数据库,则需要创建一个子查询“WHERE postID = (SELECT any FROM posts WHERE permalink = url)”或以任何方式将评论加入来自 URL 的帖子。

如果它是一个远程博客,你就会遇到每个博客都有不同的 HTML 的问题。本质上,您将需要构建一个解析器来解析 HTML 并查找重复的元素,例如“div class=comment”。但这主要是每个不同博客的体力劳动。

一些博客可能有更好的方法,比如在 HTML 或某些界面中的某处进行评论计数,但我不知道有任何标准化的方法。

编辑:如果你有一个 Comment-RSS 提要,你可能会幸运地使用一种计算 XML 节点的机制,比如 XPath 的Count

于 2008-09-06T22:06:26.220 回答
2

如果我理解正确,您需要一种启发式方法来估计已知为博客文章的 HTML 页面中的评论数量,是吗?

很多时候,一个特定的博客将具有一些使其易于工作的功能。如果你在http://kstruct.com/上查看我的,你会看到所有带有评论的页面都说“X Responses”,所以如果你能够在每个博客的基础上做一些工作,那可能不是真的难的。

如果你需要一些通用的东西,我想评论有一些你可能能够检测到的共同特征。一方面,它们中的任何链接很可能具有 rel="nofollow" 属性,因此在块中看到它可能意味着它是评论。

要寻找的主要有趣的事情是同一站点的帖子结构的变化。例如,每条评论也很有可能有自己的锚点,这样人们就可以直接链接到它,这样您就可以查看同一页面中不同数量的 <a name="XXX"> 标签网站以了解评论的相对数量。

正如 Michael Stum 所指出的,如果页面有 Comment-RSS 提要,您的生活会轻松很多,因为您可以获得结构化格式的评论数据。

不过,总而言之,我认为总体而言,这将是一个非常具有挑战性的问题。

于 2008-09-07T02:27:36.717 回答
0

博客几乎总是有评论的 RSS 提要。如果你有这个,那么你可以确定评论的确切数量,因为 99% 的时间都遵循一个标准。即使博客是你自己的,如果你已经生成了一个 RSS 提要,那么不要费心去调用你的数据库。您已经这样做以生成提要,因此您只需遍历 XML 节点是有意义的。这样您就没有额外的开销(取决于您想要获取此信息的频率)。

于 2008-09-07T02:46:48.683 回答