TVerRec
TVerRec copied to clipboard
TVerRecは、TVerの番組をダウンロード保存するためのダウンロード支援ツールです。番組のジャンルや出演タレント、番組名などを指定して一括ダウンロードする支援をします。CMは入っていないため気に入った番組を配...
🎞 TVerRec 📺 TVer 一括ダウンロード・保存
TVerRec は、テレビ番組配信サイト TVer(ティーバーhttps://tver.jp)の番組をダウンロード保存するためのダウンローダー、ダウンロード支援ツールです。 番組のジャンルや出演タレント、番組名などを指定して一括ダウンロードする支援をします。 CM は入っていないため気に入った番組を配信終了後も残しておくことができます。 1 回起動すれば新しい番組が配信される度にダウンロードされます。
- TVerRec は Windows PowerShell をサポートません。PowerShell Core でご利用ください。
- TVerRec は PowerShell Core をインストールした Windows/MacOS/Linux で動作します。
- Windows 環境で PowerShell Core がインストールされていない場合は、TVerRec が自動的に PowerShell Core をインストールします。
- Windows 環境に手動で PowerShell Core をインストールする方法や MacOS、Linux 環境への PowerShell のインストールについてはWiki のこちらのページを参照してください。
- TVerRec Docker イメージも配布中です。
- 安定版はリリースから取得してください。
動作の前提条件
-
OS
- Windows
- MacOS
- Linux
-
必要なソフトウェア
- PowerShell Core (Windows 環境では自動インストールされます)
- youtube-dl (自動ダウンロードされます)
- ffmpeg (自動ダウンロードされます)
- Python (Linux/Mac 環境のみ必要。Windows 環境では不要)
または、Docker を使ってコンテナとして動作させることも可能です。 コンテナは Linux のイメージで作成されており、必要なツールは全て設定済みの状態で起動します。 設定ファイルを用意・修正し、ディスクのマウント・バインドを設定すればすぐに利用開始できます。
Windows GUI 版の動作イメージ
Windows CUI 版の動作イメージ
主な機能
各機能の詳細は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.