2008-09-06 16 views

答えて

2

私が正しく理解していれば、ヒューリスティックは、ブログ記事であると知られているHTMLページのコメント数を見積もりたいと思いますか?

非常に多くの場合、特定のブログには簡単に解決できる機能がいくつかあります。私がhttp://kstruct.com/で鉱山を見ると、コメント付きのすべてのページに「Xレスポンス」と書かれていることがわかるので、ブログごとにいくつかの作業を行うことができれば、おそらくそれほど難しいことではないでしょう。

一般的なものが必要な場合は、コメントで検出できる可能性があるいくつかの一般的な機能があると思います。 1つには、rel = "nofollow"属性を持つ可能性が高いリンクがあるため、ブロック内にあるということはコメントであることを意味するかもしれません。

主な興味深いものは、同じサイトの投稿の構造の変更です。たとえば、各コメントに独自のアンカーが付いているので、人々が直接リンクできるので、<の異なる数字を見ることもできます。name = "XXX" >相対的なコメント数のアイデアを得ることができます。

Michael Stumは、コメントRSSフィードがある場合は、コメントデータを構造化された形式で取得できるため、人生が楽になることを指摘しています。

しかし、私は一般的に解決するのはかなり難しい問題になると思います。

4

ブログがあなたによって制御されている場合、「選択カウント(commentid)FROMコメントWHERE postID = 2」がおそらく最高のものになります。あなたはURLだけを持っていてもあなたのblog/dbだとすると、サブクエリ "WHERE postID =(何でも投稿するWHERE permalink = urlを選択してください)"を作成する必要があります。

リモートブログの場合は、各ブログのHTMLが異なるという問題があります。基本的には、HTMLを解析し、 "div class = comment"のような繰り返し要素を探すパーサーを構築する必要があります。しかし、それは主に、それぞれのブログごとに手作業になるでしょう。

ブログの中には、HTMLやその他のインターフェースのどこかでコメント数が増えるなど、より良い方法があるかもしれませんが、私は標準化された方法を知らないです。

EDIT:Comment-RSSフィードを入手した場合、XPathのCountのように、XMLノードをカウントするメカニズムを使用してが運があることがあります。

0

ブログには、ほとんどの場合、コメント用のRSSフィードがあります。あなたがそれを持っているならば、99%の時間のフィードが標準に従うので、コメントの正確な数を判断することができます。ブログが自分のものであっても、既にRSSフィードを生成している場合は、DBへの呼び出しを気にしないでください。フィードを生成するためにすでにこれを行っているので、XMLノードをたどることは意味があります。そうすれば追加のオーバーヘッドはありません(この情報を取得する頻度によって異なります)。

関連する問題