ニコニコ動画のコメント解析

  • 0
  • 1

今回はニコニコ動画のコメントの取得をしてみました
ニコニコ動画APIが非公式であるんですが、コメントの取得はできるのかなー?と思ったので調べてみました

完成形▼
ニコニコ動画のコメントを見るにはまず、ニコニコ動画にログインして
http://flapi.nicovideo.jp/api/getflv/動画ID(sm9) からメッセージサーバーのアドレスとスレッドID(動画投稿日時のタイムスタンプ)を持ってくる

ついでに昔のURLは、http://www.nicovideo.jp/api/getflv/ ですが、現在はリダイレクトされるので flapi の方を使ったほうがいいですね。


メッセージサーバーにxml形式↓の情報をPOSTすれば、コメントを取得できる
fork=1 を追加することによって投稿者コメントを取得できる
ちなみに公式動画の場合、スレッドキーを追加することで公式動画のコメントも取得できる
http://flapi.nicovideo.jp/api/getthreadkey?thread=スレッドID

<thread thread="スレッドID" version="20061206" res_from="コメント数" />

簡単な方法
http://msg.nicovideo.jp/10/api/thread?version=20090904&thread=1173108780&res_from=-100
  • msg.nicovideo.jp/10/api:メッセージサーバーURL
  • version:20061206 または 20090904
  • thread:スレッドID(上記はsm9)
  • res_from:取得コメント数(最大1000コメ)

ニコニコ動画では、こんなかんじで取得しているようです。
<packet>
<thread thread="スレッドID" version="バージョン" user_id="ユーザーID" fork="投コメ(0/1)" language="言語(0/1/2)" nicoru="ニコる(0/1)" scores="共有NG(0/1)" />
<thread_leaves thread="スレッドID" user_id="ユーザーID" scores="共有NG" nicoru="ニコる">0-10:100,1000</thread_leaves>
<thread thread="スレッドID" version="バージョン" res_from="取得件数" fork="投コメ" click_revision="@ボタン関係?(-1)" scores="共有NG" />
</packet>
『0-10:100,1000』は、0~10分間のコメントを1分最大100コメずつ、直近で1000コメは取得する。でいいのかな

また、過去のコメントを取得したい場合は、プレミアム会員のIDで
ユーザーID
指定時間のタイムスタンプwaybackkeyとやらを送りつけることで過去コメも取得できるようです。(やってない)

waybackkeyの取得
http://www.nicovideo.jp/api/getwaybackkey?thread=スレッドID

<thread thread="スレッドID" version="20061206" res_from="コメント数" when="タイムスタンプ" waybackkey="うぇいばっくきー" user_id="ユーザーID" />

そんなかんじでコメントをダウンロード・解析できるページを作ってみました(結構前から作って放置してたんですけど
追記:いつの間にか凝ったものを作ってしまいました三c⌒っ.ω.)っ
http://chillin.cafemix.jp/
移転:http://www.nicofinder.net/
※この記事は加筆修正しています。

参考にしたサイト:
ニコニコ動画API: getflvとコメントの取得
ニコニコ動画を分析してみる
追記:ニコニコ超開発
関連記事

コメント

コメントの投稿


トラックバック

トラックバックURL
http://kenapnet.blog.fc2.com/tb.php/32-625f7f18
この記事にトラックバックする(FC2ブログユーザー)
  • 最新記事
  • 人気記事

おすすめ

拍手