TVerRecは、テレビ番組配信サイトTVerの番組をダウンロード保存するためのダウンローダー、ダウンロード支援ツールです。 番組のジャンルや出演タレント、番組名などを指定して一括ダウンロードする支援をします。 CMは入っていないため気に入った番組を配信終了後も残しておくことができます。 1 回起動すれば新しい番組が配信される度にダウンロードされます。
- TVerRecはWindows PowerShellをサポートません。PowerShell Coreでご利用ください。
- TVerRecはPowerShell CoreをインストールしたWindows/Mac/Linuxで動作します。
- WindowsでPowerShell Coreがインストールされていない場合は、TVerRecが自動的にPowerShell Coreをインストールします。
- Windowsに手動でPowerShell Coreをインストールする方法や Mac、LinuxへのPowerShellのインストールについてはWikiのこちらのページを参照してください。
- Dockerイメージも配布中です。
- 安定版はリリースから取得してください。
-
OS
- Windows
- Mac
- Linux
-
必要なソフトウェア
- PowerShell Core (Windows 環境では自動インストールされます)
- youtube-dl (自動ダウンロードされます)
- ffmpeg (自動ダウンロードされます)
- Python (Linux/Macのみ必要。Windowsでは不要)
または、Dockerを使ってコンテナとして動作させることも可能です。 コンテナはUbuntu Linuxのイメージで作成されており、必要なツールは全て設定済みの状態で起動します。 設定ファイルを用意・修正し、ディスクのマウント・バインドを設定すればすぐに利用開始できます。
各機能の詳細はWikiのこちらのページを参照してください。
- 番組のジャンルや出演タレント、番組名などのキーワード指定して一括ダウンロードします。
- TVerの全録が可能です。(厳密には録画ではなくダウンロード)
- TVerの番組サムネイルをダウンロードファイルに埋め込みます。
- 字幕データが TVerにある場合は、字幕情報もダウンロードファイルに埋め込みます。
- 並列ダウンロードによる高速ダウンロードが可能です。(当方環境では1Gbpsの回線で1Gbpsでダウンロード可能)
- もちろん番組を 1 本ずつ指定したダウンロードも可能です。
- また、ダウンロードした番組が破損していないかの検証も行います。
- ダウンロードされたファイルは、最終移動先に自動的に整理可能です。
- 動作に必要なyoutube-dlやffmpegなどの必要コンポーネントは自動的に最新版がダウンロードされます。
- トースト通知により動作状況を通知します。
- 日本国外からもVPN不要で利用することができます。
- TVerRecの安定版が更新されるとアップデートが通知されます。
- Windows環境のみGUIも利用可能です。
- 曜日時間帯別にダウンロードの実行可否を指定可能です。
使い方についてはWikiのこちらのページを参照してください。 それ以外についても、ご不明点があればWikiを確認するようにしてください。
ダウンロード対象番組の設定方法についてはWikiのこちらのページを参照してください。
初期設定や環境設定の方法についてはWikiのこちらのページを参照してください。
ディレクトリ構成は以下のようになっています。
TVerRec/
├─ CHANGELOG.md ...................... 変更履歴
├─ LICENSE ........................... ライセンス
├─ README.md ......................... このファイル
├─ TODO.md ........................... 今後の改善予定
├─ VERSION ........................... バージョンファイル
│
├─ bin/ .............................. 実行ファイル格納用ディレクトリ(初期状態は空)
│
├─ conf/ ............................. 設定
│ ├─ ignore.conf ...................... ダウンロード対象外設定ファイル(存在しない場合は自動作成)
│ ├─ keyword.conf ..................... ダウンロード対象キーワードファイル(存在しない場合は自動作成)
│ ├─ system_setting.ps1 ............... デフォルトシステム設定ファイル
│ └─ user_setting.ps1 ................. ユーザ設定ファイル(必要に応じて自分で作成してください)
│
├─ db/ ............................... データベース
│ ├─ history.csv ...................... ダウンロード履歴(存在しない場合は自動作成)
│ └─ list.csv ......................... ダウンロードリスト(存在しない場合は自動作成)
│
├─ log/ .............................. ログ
│ └─ ffmpeg_error_*.log ............... ffmpegのエラーログ(処理中に作成され一定時間経過後に自動削除)
│
├─ resources/ ........................ 各種リソース
│ ├─ b64/ ........................... GUI用画像(配下のファイルは省略)
│ ├─ colab/ ......................... Gooble Colab用サンプル(配下のファイルは省略)
│ ├─ crx/ ........................... Gooble Chrome拡張機能
│ │ └─ TVerRecAssistant/ ............. TVerRec Assistant(配下のファイルは省略)
│ ├─ docker/ ........................ Docker用サンプル
│ │ ├─ docker-compose.yaml ........... docker-composeファイル
│ │ └─ Dockerfile .................... Dockerファイル
│ ├─ img/ ........................... 画像(配下のファイルは省略)
│ ├─ lib/ ........................... ライブラリ(配下のファイルは省略)
│ ├─ lock/ .......................... ファイルのロック管理(配下のファイルは省略)
│ ├─ sample/ ........................ サンプルファイル
│ │ ├─ history.sample.csv ............ 空のダウンロード履歴
│ │ ├─ ignore.sample.conf ............ サンプルダウンロード対象外設定ファイル
│ │ ├─ keyword.sample.conf ........... サンプルダウンロード対象キーワードファイル
│ │ └─ list.sample.csv ............... 空のダウンロードリスト
│ ├─ wsb/ ........................... Windows SandBox用サンプル(配下のファイルは省略)
│ └─ xaml/ .......................... GUI版のXAML定義(配下のファイルは省略)
│
├─ src/ .............................. 各種ソース
│ ├─ delete_trash.ps1 ................. ダウンロード対象外番組削除ツール
│ ├─ download_bulk.ps1 ................ 一括ダウンロードツール
│ ├─ download_list.ps1 ................ リストダウンロードツール
│ ├─ download_single.ps1 .............. 単体ダウンロードツール
│ ├─ generate_list.ps1 ................ ダウンロードリスト作成ツール
│ ├─ generate_list_child.ps1 .......... ダウンロードリスト作成ツール再帰呼び出し用
│ ├─ loop.ps1 ......................... ループ処理ツール
│ ├─ move_vide.ps1 .................... 番組を移動先に移動するツール
│ ├─ validate_video.ps1 ............... ダウンロード済番組の整合性チェックツール
│ ├─ functions/ ....................... 各種共通関数
│ │ ├─ common_functions.ps1 ............ 共通関数定義
│ │ ├─ initialize.ps1 .................. 各ツールの初期処理定義
│ │ ├─ initialize_child.ps1 ............ 各ツールの初期処理定義再帰呼び出し用
│ │ ├─ tver_functions.ps1 .............. TVer共通関数定義
│ │ ├─ tverrec_functions.ps1 ........... TVerRec共通関数定義
│ │ ├─ update_ffmpeg.ps1 ............... ffmpeg自動更新ツール
│ │ ├─ update_tverrec.ps1 .............. TVerRec自身の自動更新ツール
│ │ └─ update_youtube-dl.ps1 ........... youtube-dl自動更新ツール
│ └─ gui/ ............................. GUI設定
│ ├─ gui_main.ps1 .................... GUI版のTVerRecを起動するツール
│ └─ gui_setting.ps1 ................. TVerRecの設定用画面を起動するツール
│
├─ test/ ............................... 自動テスト用スクリプト(配下のファイルは省略)
│
├─ unix/ ............................. Linux/Mac用シェルスクリプト
│ ├─ a.download_bulk.sh ............... キーワードを元一括ダウンロードするシェルスクリプト
│ ├─ b.delete_trash.sh ................ ダウンロード対象外番組・中間ファイル削除シェルスクリプト
│ ├─ c.validate_video.sh .............. ダウンロード済番組の整合性チェックシェルスクリプト
│ ├─ d.move_video.sh .................. 番組を移動先に移動するシェルスクリプト
│ ├─ start_tverrec.sh ................. キーワードを元に無限一括ダウンロード起動シェルスクリプト
│ ├─ stop_tverrec.sh .................. 無限一括ダウンロード終了シェルスクリプト
│ ├─ update_tverrec.sh ................ TVerRecのアップデートをするシェルスクリプト
│ ├─ x.generate_list.sh ............... ダウンロードリストを生成するシェルスクリプト
│ ├─ y.download_list.sh ............... ダウンロードリストを元にダンロードするシェルスクリプト
│ └─ z.download_single.sh ............. 番組を1本ずつダウンロードするシェルスクリプト
│
└─ win/ .............................. Windows用CMDファイル
├─ a.download_bulk.cmd .............. キーワードを元一括ダウンロードするCMD
├─ b.delete_trash.cmd ............... ダウンロード対象外番組・中間ファイル削除CMD
├─ c.validate_video.cmd ............. ダウンロード済番組の整合性チェックCMD
├─ d.move_video.cmd ................. 番組を移動先に移動するCMD(もし必要であれば)
├─ Setting.cmd ...................... TVerRecの設定用画面を起動するCMD
├─ start_tverrec.cmd ................ キーワードを元に無限一括ダウンロード起動CMD
├─ stop_tverrec.cmd ................. 無限一括ダウンロード終了CMD
├─ TVerRec.cmd ...................... GUI版のTVerRecを起動するCMD
├─ update_tverrec.cmd ............... TVerRecのアップデートをするCMD
├─ x.generate_list.cmd .............. ダウンロードリストを生成するCMD
├─ y.download_list.cmd .............. ダウンロードリストを元にダンロードするCMD
└─ z.download_single.cmd ............ 番組を1本ずつダウンロードするCMD
-
著作権
- このプログラムの著作権はdongabaが保有しています。
-
免責
- このソフトウェアを使用して発生したいかなる損害にも、作者は責任を負わないものとします。 ご利用の際は各自の自己責任で使用してください。
- TVerRec はThe MIT Licenseに基づき、複製や再配布、改変が許可されます。
Copyright (c) dongaba. All rights reserved.