Skip to content

『ニコ生新配信録画ツール(仮』『ニコニコ実況過去ログAPI』を使って、ニコニコ実況の過去ログ(生放送タイムシフト)を取得・保存する Windows 用のコマンドラインツールです。GUIで操作するフロントエンドもあります。

sasukekinniku/JkTsGetter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JkTsGetter

最新版のダウンロードは https://github.com/sasukekinniku/JkTsGetter/releases/ からどうぞ

このソフトについて

『ニコ生新配信録画ツール(仮』(https://com.nicovideo.jp/community/co2414037) を使って、ニコニコ実況の生放送タイムシフトを取得する Windows 用のコマンドラインツールです。前日以前だけでなく、当日の過去ログも追っかけ再生で取得できます。

『ニコニコ実況過去ログAPI』(https://jikkyo.tsukumijima.net/) にも対応しており、生放送に移行する以前の過去ログも取得できます。

GUI で操作できるフロントエンド JkTsGetterTool が付属します。

初期設定

  • このソフトを起動するには .NET Framework 4.7.2 が必要です。起動できない場合は、これがインストールできているか確認してください。
  • このソフトで実況生放送のタイムシフトを取得するには、『ニコ生新配信録画ツール(仮』が必要です。
    • https://com.nicovideo.jp/community/co2414037 から最新版をダウンロードしてください。
    • 『ニコ生新配信録画ツール(仮』を起動し、メニューの [ツール] - [オプション] を選択し、[アカウント] タブから、ニコニコにログインする設定を行ってください。その他の設定項目の多くは、このツールから呼び出すときに一時的に上書きされますが、項目によっては変更することでうまく取得できなくなる可能性があります。
  • プレミアム会員、もしくは一般会員でタイムシフト予約をして、過去の実況生放送を取得できるようにしたニコニコアカウントが必要となります。『ニコニコ実況過去ログAPI』から取得する場合は、ニコニコアカウントやツールは必要ありません。
    • 当日のログ取得方法は追っかけ再生に限られるため、プレミアム会員だけが利用できます。午前4時を回ってタイムシフトで取得できるようになると、タイムシフト予約しておいた一般アカウントでも取得できます。
  • このツールに含まれる JkTsGetter.exe, JkTsGetterTool.exe は『ニコ生新配信録画ツール(仮』と同じフォルダに入れてください。もしくは、別の場所に置いて、JkTsGetter.ini を書き換えて『ニコ生新配信録画ツール(仮.exe』の場所を指定してください。
  • JkTsGetter.ini.sample は JkTsGetter.ini に名前変更することで、設定ファイルとして読み込まれます。

使い方

過去ログ取得

JkTsGetter チャンネル 取得開始日時 取得終了日時 [オプション...]
  • 指定チャンネルの過去ログを取得します。
  • チャンネルは、jk1(NHK), jk2(Eテレ) などのように指定します。jkをつけずに 1, 2 などとしてもOKです。
  • 日時はUnix時間か、yyyymmddhhmmss の14桁 (2020年1月2日3時15分30秒なら、20200102031530) で指定します。

タイムシフト1日分取得

JkTsGetter チャンネル 取得年月日 -ts [オプション...]
  • 指定チャンネル、指定日のニコ生タイムシフトコメント (午前4時~翌午前4時の24時間分) を取得します。
  • 年月日は yyyymmdd の8桁 (2020年1月2日なら、20200102) で指定します。

全タイムシフト取得

JkTsGetter -all [オプション...]
  • 現在取得可能な、すべての実況公式ニコ生タイムシフトを取得します。
  • この機能は事実上ニコニコプレミアム会員アカウントが必須となります。

全タイムシフト取得 (キャッシュフォルダ)

JkTsGetter -all -cache [オプション...]
  • 取得可能なすべての実況公式ニコ生タイムシフトを取得します。
  • JkTsGetter.ini で指定したキャッシュフォルダに保存し、チャンネルごとにサブフォルダを作成し、上書きをおこないません。
  • この機能は事実上ニコニコプレミアム会員アカウントが必須となります。

tsファイルから過去ログ取得

JkTsGetter tsファイル [オプション...]
  • tsファイルからチャンネル、開始時間、終了時間を取得して、過去ログを取得します。
  • 開始日時、チャンネルはtsファイルの内容から解析し、終了時間はファイルの最終更新日時から取得します。
  • tsファイルから各種情報を取得できなかった場合は、過去ログの取得を行いません。

コメントファイルをマージ

JkTsGetter xmlファイル1 xmlファイル2 -merge [オプション...]
  • 2つのコメントxmlファイルを、1つのファイルにマージ (時間順に並べ替えて統合) します。

コマンドラインオプション

-ts

指定チャンネルの特定日のタイムシフトを1日分取得します。

-all

取得可能なすべての実況ニコ生タイムシフトを取得します。この機能は事実上ニコニコプレミアム会員アカウントが必須となります。

-m 秒

取得日時の前後を指定秒だけ広げます。

-s 秒

取得日時の前部分を指定秒だけ広げます。

-e 秒

取得日時の後部分を指定秒だけ広げます。

-f フォルダ/ファイルパス

出力するフォルダやファイル名、パスを指定します。フォルダを指定した場合、その中にデフォルトのファイル名で出力します。指定しなかった場合、カレントフォルダにデフォルトのファイル名で出力します。

-d

チャンネル名と同じ名前のサブフォルダを作成し、その中に過去ログを保存します。

-v

保存したいファイルと同名のファイルがある場合に、上書きを行いません。

-api

日時にかかわらず、つねにニコニコ実況過去ログAPIから取りに行きます。

キャッシュ機能について

JkTsGetter.ini を書き換えて設定を有効にすると、キャッシュ機能が利用できます。

これは、ニコ生のタイムシフトをダウンロードすると、その日1日分 (4時~翌4時) 全部のコメントをキャッシュフォルダに保存し、該当の時間帯をもういちど取得するときに、自動で再利用ができる機能です。

取得の際に自動保存、自動利用するほか、コマンドラインオプションに「-all -cache」をつけることによって、現在取得できるタイムシフトをすべてキャッシュフォルダにダウンロードすることもできます。

その日のログがまだタイムシフト化されていない場合 (追っかけ再生の取得となった場合) や、『ニコニコ実況過去ログAPI』から取得した場合はキャッシュは保存されません。

JkTsGetterTool について

JkTsGetterTool.exe は、コマンドライン操作をしなくてもGUI操作で過去ログを取得できるツールです。JkTsGetter.exe と同じ場所に置いて起動してください。

「時間指定で取得」タブ

ニコニコ生放送、もしくは『ニコニコ実況過去ログAPI』から過去ログを取得します。このタブに .ts ファイルをドラッグ & ドロップすると、ファイルからチャンネル、開始日時、終了日時を取得できます。当日分の追っかけ取得も可能です。

「一日分取得」タブ

ニコニコ生放送から一日分 (指定日の午前4時~翌午前4時) の過去ログを取得します。このタブに .ts ファイルをドラッグ & ドロップすると、ファイルからチャンネル、日付を取得できます。まだ午前4時を回っていない当日分は取得できません。

ツールタブ

2つのxmlファイルを、時間で並べ替えつつ1つのファイルに統合できます。

その他タブ

ニコニコ実況のサイトを開いたり、このツールのバージョン情報が載っていたりします。

謝辞

以下のコードを使用、または参考にさせていただきました。ありがとうございます。

免責事項

このツールは自己責任でご使用ください。万が一バグによってファイルを上書きしたり、タイムシフトコメントの取得をミスったりしても開発者は責任を負うことはできません。

最新版

このツールの最新版は以下で頒布しています。

https://github.com/sasukekinniku/JkTsGetter

更新履歴

Ver.1.0.0.11 (2022/3/21)

  • BS新局 (BS松竹東急、BSJapanext、BSよしもと) のtsファイルをドラッグ&ドロップしたとき、チャンネルを自動取得できるようにした

Ver.1.0.0.10 (2022/3/21)

  • BS新局 (BS松竹東急、BSJapanext、BSよしもと) の過去ログAPIからの実況ログ取得に対応した

Ver.1.0.0.9 (2021/7/25)

  • NHK BS1 のニコ生実況に対応した

Ver.1.0.0.8 (2021/3/12)

  • Ver.1.0.0.7 でタイムシフト全取得ができなくなっていたのを修正 (ポカミスです。申し訳ありません)

Ver.1.0.0.7 (2021/3/10)

  • メンテナンスによって生放送枠が1日に複数回に分かれた場合、その日の最初の1回しか追従しないのを修正 (2021年2月17日、2021年2月24日が該当します)

Ver.1.0.0.6 (2021/2/19)

  • チャンネル生放送の一覧を取得していたAPIが使えなくなったため、同等の別APIを使用するようにした
  • 当日分の追っかけ再生を取得しようとすると、一度エラーとなり過去ログAPIからの取得を試みてしまうのを修正した
  • JkTsGetterTool の「+30分」ボタンが「+30日」になっていたのを修正
  • JkTsGetterTool の「過去ログ取得」「タイムシフト取得」タブの表記を、「時間指定で取得」「一日分取得」に変更した

Ver.1.0.0.5 (2021/1/10)

  • 期限切れのタイムシフトを取得しようとして止まってしまうバグを修正した
  • 生放送取得前に番組情報を確認し、タイムシフトが有効か確認するようにした
  • キャッシュパスのデフォルトを変更した

Ver.1.0.0.4 (2021/1/8)

  • 一定件数 (16件) よりも前の生放送情報を取得していないために、10日よりも前のタイムシフトを取得できなかったバグを修正した
  • キャッシュフォルダが存在しない場合、キャッシュフォルダ名として指定した名前のキャッシュファイルを生成するバグを修正した
  • アーカイブに含む JkTsGetter.ini を JkTsGetter.ini.sample に名前変更した

Ver.1.0.0.3 (2020/12/27)

  • 通信時にツール名とバージョンを User-Agent として送信するようにした

Ver.1.0.0.2 (2020/12/24)

  • アプリケーションのアイコンを追加した
  • 出力ファイル名を指定しなかった場合エラーとなるのを修正した
  • 常に過去ログAPIを使用するオプションスイッチを -old から -api に変更した
  • TsGetterTool から常に過去ログAPIを使用する設定がきていないのを修正した

Ver.1.0.0.1 (2020/12/23)

  • 保存先に拡張子が .ts のファイルを指定すると実行しないようにした
  • TsGetterTool の保存先に .xml, .nicojk, .jkl, .txt 以外の拡張子のファイルをドラッグ&ドロップできないようにした
  • TsGetterTool の各種取得の実行前に、ファイルの上書きを確認するダイアログを出すようにした
  • TsGetterTool で、処理の終了直後に処理ウインドウを閉じるとエラーが出る場合があるのを修正した

Ver.1.0.0.0 (2020/12/23)

  • 初回リリース

About

『ニコ生新配信録画ツール(仮』『ニコニコ実況過去ログAPI』を使って、ニコニコ実況の過去ログ(生放送タイムシフト)を取得・保存する Windows 用のコマンドラインツールです。GUIで操作するフロントエンドもあります。

Resources

Stars

Watchers

Forks

Languages