ニコニコ動画検索APIが公開されたので触ってみた。
ニコニコ動画の公式から検索用APIが公開されてたのでPythonで関数にしてみた。
ニコニコ動画 『スナップショット検索API』 ガイド
ちなみにPythonは勉強したてなので,Pythonの練習も兼ねて。
# coding:utf-8 import urllib2 import json import sys import codecs sys.stdout = codecs.getwriter('utf_8')(sys.stdout) def nico_search(query, service=['video'], search=['title', 'description', 'tags'], join=['cmsid', 'title', 'view_counter'], issuer='nico_api'): req = urllib2.Request('http://api.search.nicovideo.jp/api/snapshot/') req.add_header('content-type', 'application/json') data = json.dumps({'query': query, 'service': service, 'search': search, 'join': join, 'issuer': issuer}) res = unicode(urllib2.urlopen(req, data).read(), 'utf-8') return res if __name__ == '__main__': res = nico_search('初音ミク') print res
{"dqnid":"08744ec3-0b3b-4b73-b942-5c46f5351fa8","type":"hits","values":[{"_rowid":0,"cmsid":"sm23720459","title":"初音ミク","view_counter":581},{"_rowid":1,"cmsid":"sm19065818","title":"初音ミク","view_counter":54},{"_rowid":2,"cmsid":"sm15309998","title":"初音ミク 綠光","view_counter":322},{"_rowid":3,"cmsid":"sm22962024","title":"初音ミク","view_counter":148},{"_rowid":4,"cmsid":"sm23739051","title":"初音ミク2","view_counter":216},{"_rowid":5,"cmsid":"sm23486084","title":"Google × 初音ミク CM","view_counter":389},{"_rowid":6,"cmsid":"sm3027541","title":"MUGEN初音ミク","view_counter":2116},{"_rowid":7,"cmsid":"sm22908770","title":"LEGO 初音ミク","view_counter":105},{"_rowid":8,"cmsid":"sm24514916","title":"初音ミク bgm1.mp4","view_counter":31},{"_rowid":9,"cmsid":"sm20491983","title":"初音ミクprojectDIVAf OP","view_counter":130}]} {"dqnid":"08744ec3-0b3b-4b73-b942-5c46f5351fa8","type":"stats","values":[{"_rowid":0,"service":"video","total":230168}]} {"dqnid":"08744ec3-0b3b-4b73-b942-5c46f5351fa8","endofstream":true,"type":"hits"} {"dqnid":"08744ec3-0b3b-4b73-b942-5c46f5351fa8","endofstream":true,"type":"stats"}
検索キーワードを指定すると検索結果(今回は動画ID・タイトル・再生数)が返ってくるだけ。
超シンプル。
まだまだオプションがあるので、弄ってみようと思う。
一応Githubにも公開しておきます。
https://github.com/otomarukanta/nicosearch