2010年12月06日
ニコニコ動画でコメントを取得する方法のメモ
動画再生ページ上で動作するGreasemonkeyスクリプトから,動画についたコメントを取得する方法は主に2通りある。それぞれについてメモ。
新プレイヤーのAPIを使う方法
javascript: function hoge(data)alert(uneval(data)); void(document.getElementById("flvplayer").ext_getThreads('hoge'));
以下のような応答が得られる。
[{type:"main", id:0}, {type:"local", id:1}]
ここで得られたスレッドID?を使って,以下を呼び出す。
javascript: alert(JSON.stringify(document.getElementById("flvplayer").ext_getComments(1)));
以下のような応答が得られる。コメント番号降順で得られるっぽい。
[ {"message": "mohrmohr", "resNo": 13, "vpos": 14970, "date": "Sun Nov 21 2010", "command": "184"}, {"message": "ahogeahoge", "resNo": 12, "vpos": 7340, "date": "Sun Nov 21 2010", "command": "184"}, {"message": "mohrmohr", "resNo": 11, "vpos": 3160, "date": "Sun Nov 21 2010", "command": "184"} ]
得られるコメントは,動画上で表示されているものと同じよう。10分超の動画なら1000件だし,短ければ得られるコメントも少なくなる。
メッセージサーバにアクセスしてXMLを取得する場合と比較したメリット・デメリットは以下の通り。
メリット
デメリット
コメント中のURLを抽出するなどの用途なら十分使い物になりそうですね。
メッセージサーバにアクセスする方法
昔からある方法。404 Not Foundを参考にすれば良さそう。
リクエストの<thread>要素の属性として,whenとwaybackkeyを与えれば過去ログも取得できる?
追記
やりかた見つけたニコニコ動画を分析してみる: 小沢動画編 - Myrmecoleon in Paradoxical Library. はてな新館
トラックバック - http://d.hatena.ne.jp/gifnksm/20101206/1291667625
リンク元
- 2957 http://matome.naver.jp/odai/2129649658966682001
- 501 http://kachibito.net/web-design/lectures-and-tips-articles.html
- 282 http://www.google.co.jp/url?sa=t&rct=j&q=ニコニコ タグ 履歴&source=web&cd=4&ved=0CEMQFjAD&url=http://d.hatena.ne.jp/gifnksm/20101206/1291613672&ei=-1ikTpzzBsPEmAXx--WXCQ&usg=AFQjCNFXU
- 172 http://www.google.co.jp/search?q=ニコニコ動画 説明文 リンク&rlz=1I7RNWN_ja&ie=UTF-8&oe=UTF-8&sourceid=ie7&redir_esc=&ei=xrf8TNekEIqurAeKtaX1Bw
- 157 http://d.hatena.ne.jp/
- 153 http://search.yahoo.co.jp/search?p=ニコニコ動画のリンク&toggle=1&ei=UTF-8&pstart=1&fr=my-top-cm&b=11
- 134 http://d.hatena.ne.jp/seikenn/20100203/programmingMaster
- 105 http://blog.webcreativepark.net/2010/02/02-111519.html
- 98 http://matome.naver.jp/odai/2129649658966682001?page=1&viewCode=SD&grid=false
- 96 http://b.hatena.ne.jp/hotentry/it
