ニコニコ動画API単語


ニコニコ動画でニコニコ動画APIの動画を見に行く
ニコニコドウガエーピーアイ
7.3千文字の記事
  • 35
  • 0pt
掲示板へ

ニコニコ動画API とは、ニコニコ動画で利用可API(Application Programming Interface)である。

概要

中の人く、 [1]

現時点でも様々な方法でニコニコ動画内の情報動画情報サムネイルなど)を取得している方がいると思いますが、これも思ったより負荷がかかるので心情的にはやめてほしいというのが正直なところです。できれば負荷の少なそうな時間帯にやってもらえるとありがたいです、こっそりと。

最終的には他のサービスと同様にニコニコ動画内の情報提供するAPIというのは用意していく予定で、具体的なスケジュールはまだ未定ですが年内にはいろいろできてるんじゃないかと思います。というわけで温かいで見守ってください。情報継続的に開発ブログなんかで提供していきます。

とのことなのだが、どこからどう見ても継続的に開発ブログ情報提供している形跡はない。まあそれはともかく、APIが用意されている情報に関してはAPIを用いて取得しよう。そちらの方が一般的に楽。 ニコニコチャートexit などもこれらのAPIを使用してランキング情報を取得している。また、利用する際はheaderに個別のUser-Agentを設定することが推奨されている。

ニコニコ公開API

スナップショット検索API

ニコニコ動画動画検索するための公式API「スナップショット検索API」が2014年10月15日に公開され2016年12月7日に、2017年2月末頃を目途として「 スナップショット検索API v2exit 」へと置き換えられることが 発表exit された。JSONPOSTすることで、特定キーワードフィルタ条件に合致する動画情報を一括で取得できる。

ニコニコ非公開API

ニコニコサーバ上で運用されているものの運営から存在が明言されていないAPI予告なく停止する可性もあるので利用は自己責任で。

getthumbinfo

GET https://ext.nicovideo.jp/api/getthumbinfo/{動画ID}

動画ID smやsoから始まる動画を識別する固有のID sm500873

動画の簡単な情報XML形式で取得する。ログインしでも使用でき、アクセス制限がいのが最大の特徴。動画IDまたはスレッドIDコミュニティ動画チャンネル動画で使われる数字のみから成るID)を定できる。また、得られるものはほぼ最新の値だが、サーバー側でキャッシュが利いているらしく、何回かリロードすると値が変化することもある。

削除済み動画コミュニティ動画、非表示設定されている動画情報が得られず、 nicovideo_thumb_response タグstatus属性が "fail" となる(通常は"ok")

レスポンスデータは以下の通り。

キー 例(sm500873)
video_id 動画ID sm500873
title 動画タイトル 組曲『ニコニコ動画』
description 動画説明文 700万再生ありがとうございました...(以下省略)
thumbnail_url 動画サムネイルURL https://nicovideo.cdn.nimg.jp/thumbnails/500873/500873
first_retrieve 投稿日 2007-06-23T18:27:06+09:00
length 動画再生時間 10:48
movie_type 動画の形式(flv,mp4,swf) flv
size_high 動画サイズ(byte) 40007472
size_low 低画質時の動画サイズ(byte) 35192581
view_counter 再生 11831754
comment_num コメント 4920095
mylist_counter マイリスト 155571
last_res_body 直近のコメント 500コメント なう(2022/10/20 07:56:40) ( ゚∀゚)o彡゜えーりんとかちつくちて きしめえええええええ 
watch_url 視聴URL https://www.nicovideo.jp/watch/sm500873
thumb_type 固定video video
embeddable 外部プレイヤー再生か(0=不可能,1=可) 1
no_live_play ニコ生再生禁止か(0=可,1=禁止) 0
tags 設定されているタグリスト domain属性定(jpのみ)
  └tag タグ category属性カテゴリタグか、lock属性ロックされているか
genre ジャンル 音楽・サウンド
user_id 投稿者ユーザーID 145217
user_nickname 投稿者名前 しも
user_icon_url 投稿者アイコンURL https://secure-dcdn.cdn.nimg.jp/nicoaccount/usericon/defaults/blank_s.jpg
ch_id チャンネルID -
ch_name チャンネル -
ch_icon_url チェンネルアイコンURL -

nvapi

ジャンル別や個別ランキングランキングデータが取得できる。4月7日ランキング改定にあわせて個別ランキングの追加があった模様。個別のランキングは/teiban/となっているので以下では仮に定番ランキングと記載している。

前提

以下のリクエストヘッダーが必須になっている模様。なお、クエリパラメータに「_frontendId=6」を定しないとランキングデータからなぜか一部動画が欠落することがある。

ヘッダー名 説明
User-Agent 作成しているツール名を入力する。具体的なツール名をきちんと明記しないとはじかれる危険がある。
Cookie ニコニコ動画user_session Cookie定する。

ジャンル一覧取得

GET https://nvapi.nicovideo.jp/v2/genres

ジャンル一覧が取得できる。

レスポンスは以下のようにジャンルキーラベルの組み合わせになっている。

"key": "music",
"label": "音楽"

このジャンルキーを後述のランキングデータ定する。

ジャンル別ランキングデータ取得

GET https://nvapi.nicovideo.jp/v1/ranking/genre/{ジャンルキー}

ジャンル別のランキングデータが取得できる。

現時点で確認できる範囲においては、パラメータの仕様は以下の通り。

URLパラメータ
パラメータ名 必須要否 説明
{ジャンルキー} 必須 all定すると全ジャンルが取得可。個別のジャンルを取得する場合は一覧取得で確認したジャンルキーを使用する。

クエリパラメータ
パラメータ名 必須要否 デフォルト 説明
term 必須 24h ランキングの集計期間でそれぞれのランキングについては以下の値になっている。
page 任意 1 ページ番号
pageSize 任意 25 1ページあたりの取得件数だが、任意の数は定できない。25と100しか用意されていない模様。

レスポンスデータ

レスポンスデータは以下の通り。何に使っているかわからないものもある。

キー 備考
type "essential" 固定されている?
id 動画ID
title 動画タイトル
registeredAt 投稿日 ISO 8601形式
count 数値データ カンマ区切りなし
view 再生 取得できるデータリアルタイム更新されている
comment コメント
└mylist マイリスト
└like いいね数
thumbnail サムネイル画像 サムネイル画像のURLが各種用意されている。
Url サムネイル画像URL 標準サイズ(130x100ピクセル)
middleUrl サイズ(320x180ピクセル)
largeUrl サイズ(360x270ピクセル)
└listingUrl サイズ(320x180ピクセル)※用途不明
nHdUrl 最大サイズ(640x360ピクセル)※用途不明
duration 動画再生時間 単位
shortDescription 動画説明文 冒頭の抜
latestCommentSummary 直近のコメント
isChannelVideo チャンネル動画判定 チャンネル動画以外はfalse
isPaymentRequired 有料動画判定 有料動画以外はfalse
playbackPosition ※詳細不明
owner 投稿者情報
ownerType 投稿者タイプ userchannel
Type ※詳細不明 ownerTypeと同じ値になっている
visibility ※詳細不明 基本的にvisibleが入っている
id ユーザーID ownerTypechannelの場合は先頭に「ch」が付与されている
name ユーザー チャンネルの場合にはチャンネル
iconUrl ユーザーアイコンの画像URL
requireSensitiveMasking ※詳細不明 センシティブフラグのようだが例のソレもすべてfalseになっている
videoLive ※詳細不明 ライブ公開した動画falseになっている
isMuted ※詳細不明 基本的にfalseが入っている
9d091f87 ※詳細不明 基本的にfalseが入っている
acf68865 ※詳細不明 基本的にfalseが入っている

定番ランキング一覧取得

GET  https://nvapi.nicovideo.jp/v1/ranking/teiban/featured-keys

定番ランキング一覧ランキングごとのキーが取得できる。

レスポンスは以下のようにランキングごとのキーラベル、トレンドタグ(※)が取得可ランキングの組み合わせになっている。

"featuredKey": "dshv5do5",
"label": "ボカロ"
"isEnabledTrendTag": false

(※)トレンドタグとは定番ランキングの上部に並んでいる個別のタグランキングのことをす。例えば「ボカロ」では「初音ミク」や「VOCALOID」などが並んでいる。

featuredKeyを後述のトレンドタグ一覧取得APIや定番ランキングデータ取得API定する。

トレンドタグ一覧取得

GET https://nvapi.nicovideo.jp/v1/ranking/teiban/featured-keys/{featuredKey}/trend-tags

定番ランキング一覧で取得したfeaturedKeyを利用して、定番ランキングごとにトレンドタグとして何が存在しているのかを取得できる。ここで取得できたトレンドタグを定番ランキングデータ取得APIで使用することで、定番ランキング全体からさらに絞り込んだトレンドタグごとのランキングデータを取得できる。

レスポンスは以下のようにランキングごとのキーラベル、トレンドタグの組み合わせになっている。

"featuredKey": "v6wdx6p5",
"label": "解説・講座",
"isTopLevel": false,
"isImmoral": false,
"trendTags": [
"琴葉茜",
"voiceroid解説",
"ニコニコ動画講座",
"VOICEROID解説",
"ゆっくり解説",
"VOICEVOX解説",
"歴史",
"科学",
"SCP解説",
"ずんだもん",
"結月ゆかり"

なお、isTopLevelは総合のみtrueになっているので、最上ランキングであることを示していると思われる。isImmoral例のソレのみtrueになっている。つまりはそういうこと。

trendTagsを後述の定番ランキングデータ定する。

定番ランキングデータ取得

GET https://nvapi.nicovideo.jp/v1/ranking/teiban/{featuredKey}

定番ランキングランキングデータが取得できる。

現時点で確認できる範囲においては、パラメータの仕様は以下の通り。

URLパラメータ
パラメータ名 必須要否 説明
{featuredKey} 必須 定番ランキング一覧取得で確認したfeaturedKeyを使用する。

クエリパラメータ
パラメータ名 必須要否 デフォルト 説明
term 必須 24h ランキングの集計期間でそれぞれのランキングについては以下の値になっている。
page 任意 1 ページ番号
pageSize 任意 25 1ページあたりの取得件数だが、任意の数は定できない。25と100しか用意されていない模様。
tag 任意 - レンドタグ一覧取得で得られたタグ定するとトレンドタグに絞り込んだランキングデータが取れる。
定番ランキング一覧取得APIレスポンスに含まれるisEnabledTrendTagtrueの場合のみ定可で、termのパラメーターが24hとhourの場合のみデータが取得できる。

レスポンスデータ

レスポンスデータは以下の通り。何に使っているかわからないものもある。

キー 備考
type "essential" 固定されている?
id 動画ID
title 動画タイトル
registeredAt 投稿日 ISO 8601形式
count 数値データ カンマ区切りなし
view 再生 取得できるデータリアルタイム更新されている
comment コメント
└mylist マイリスト
└like いいね数
thumbnail サムネイル画像 サムネイル画像のURLが各種用意されている。
Url サムネイル画像URL 標準サイズ(130x100ピクセル)
middleUrl サイズ(320x180ピクセル)
largeUrl サイズ(360x270ピクセル)
└listingUrl サイズ(320x180ピクセル)※用途不明
nHdUrl 最大サイズ(640x360ピクセル)※用途不明
duration 動画再生時間 単位
shortDescription 動画説明文 冒頭の抜
latestCommentSummary 直近のコメント
isChannelVideo チャンネル動画判定 チャンネル動画以外はfalse
isPaymentRequired 有料動画判定 有料動画以外はfalse
playbackPosition ※詳細不明
owner 投稿者情報
ownerType 投稿者タイプ userchannel
Type ※詳細不明 ownerTypeと同じ値になっている
visibility ※詳細不明 基本的にvisibleが入っている
id ユーザーID ownerTypechannelの場合は先頭に「ch」が付与されている
name ユーザー チャンネルの場合にはチャンネル
iconUrl ユーザーアイコンの画像URL
requireSensitiveMasking ※詳細不明 センシティブフラグのようだが例のソレもすべてfalseになっている
videoLive ※詳細不明 ライブ公開した動画falseになっている
isMuted ※詳細不明 基本的にfalseが入っている
9d091f87 ※詳細不明 基本的にfalseが入っている
acf68865 ※詳細不明 基本的にfalseが入っている

thumb

GET https://ext.nicovideo.jp/thumb/{動画ID}

り付け用のiframeが得られる。↓こんなの

getrelation

GET https://flapi.nicovideo.jp/api/getrelation?page=1&sort=commentCount&order=acs&video=sm9

動画に関連するオススメ動画リストXML形式で取得できる。

nvcomment

GET https://nvcomment.nicovideo.jp/legacy/api.json/thread?nicoru=3&res_from=-1000&scores=1&thread=1173108780&version=20090904&with_global=1

定した動画コメントJSON形式で取得できる

rss

GET https://www.nicovideo.jp/**/**?rss=atom
GET https://www.nicovideo.jp/**/**?rss=2.0

マイリスト投稿動画一覧などのURLの最後に「?rss=atom(または2.0)」と打ち込んでアクセスするとATOMRSS)形式で表示され、購読することも可

外部API

ニコニコ以外の外部サーバにおいて運用されているAPI

ニコニコ実況過去ログAPI

ニコニコ実況過去ログAPIexitとはニコニコ実況コメント過去ログXML形式JSON形式で取得できる非公式API。それぞれの実況チャンネルコメントを日時範囲定で取得できる。

API利用ツール等

ここではニコニコ動画APIを利用するライブラリ及びツールの例を紹介する。

nicovideo gem (Ruby)

インストール方法
% gem install nicovideo

nicovideo Thumbinfo popup (Greasemonkeyスクリプト)

nicovideo Thumbinfo popupexit は、ニコニコ動画へのリンクマウスカーソルを載せるとサムネイル情報ポップアップ表示する。

NicoApiWrapper

ニコニコ技術部員の作成したツール、兼ライブラリJavaで書かれており利用方法も動画紹介されている。

外部リンク

関連項目

脚注

  1. *外部プレーヤーや各種APIの開放について より引用exit

【スポンサーリンク】

  • 35
  • 0pt
記事編集 編集履歴を閲覧

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

ニコニコ動画API

123 ななしのよっしん
2021/12/13(月) 20:51:52 ID: c2Db8dCiI3
👍
高評価
0
👎
低評価
0
124 ななしのよっしん
2021/12/13(月) 20:54:02 ID: c2Db8dCiI3
そんなこといか
なんか動画によって違うのかな(urlとか?)
👍
高評価
0
👎
低評価
0
125 ななしのよっしん
2022/08/17(水) 02:44:56 ID: 5oghxC9WJS
告知】一部非APIを停止いたします【ニコニコ動画
https://blog.nicovideo.jp/niconews/175063.htmlexit

APIだけどちゃんとアナウンスするんだな
👍
高評価
0
👎
低評価
0
126 ななしのよっしん
2022/09/07(水) 23:28:01 ID: CCpvnq1nmV
スナップショット検索API v2で日付で範囲定するにはどうしたらいいんだ?
👍
高評価
0
👎
低評価
0
127 ななしのよっしん
2023/03/20(月) 15:50:03 ID: c2Db8dCiI3
👍
高評価
1
👎
低評価
0
128 ななしのよっしん
2023/12/09(土) 22:49:55 ID: 6T1yDiT8Nc
thumbのCSSがとれなくなってる
見たが不便だな
👍
高評価
0
👎
低評価
0
129 ななしのよっしん
2024/01/24(水) 00:27:25 ID: pggREae18p
👍
高評価
0
👎
低評価
0
130 ななしのよっしん
2024/02/04(日) 13:38:19 ID: EfKzJQsOR0
もしかして投稿者削除に関しては判断できなくなった?
👍
高評価
0
👎
低評価
0
131 ななしのよっしん
2024/09/11(水) 00:00:56 ID: DDRBZgSI5O
動画一括取得のAPIがほしいな
👍
高評価
0
👎
低評価
0
132 ななしのよっしん
2024/10/08(火) 01:06:50 ID: FxroIw8eMP
動画視聴ページで使えるAPIいか…
以前は__videoplayerという関数公式プレイヤーを直接操作できていた。
__videoplayer.play()や__videoplayer.pause()、__videoplayer.currentTime()が使えていたが
くなってしまった。代わりはないかな
👍
高評価
2
👎
低評価
0

ニコニコニューストピックス