markekit YouTube動画保存 — Mac版

このツールは、動画のURLから画質を選んでMP4をMacに保存します。
Webページだけで動画をダウンロードする構成ではなく、Mac上で取得処理を行います。

【初回セットアップ】
1. ZIPファイルを解凍します。中のファイルは同じフォルダに置いてください。
2. Python 3.10以上がなければ公式サイトからインストールしてください。
   https://www.python.org/downloads/macos/
3. Start-Mac.commandを開きます。初回のみ必要なプログラムを取得します。
4. ブラウザで動画保存画面が開きます。URLを貼り付け、「動画を確認」を押します。
5. 画質を選び「MP4で保存」を押します。

【保存先と終了】
Finder > ダウンロード > markekit
動画はこのフォルダに保存されます。ブラウザのダウンロード一覧には追加されません。
終了時はターミナルで Control + C を押してください。
取得中に終了すると、一時ファイルが残ることがあります。
2回目以降はStart-Mac.commandを再び開いてください。

【起動時に開けない場合】
「実行する権限がありません」と出る場合は、ターミナルを開いて以下を入力します。
  bash （末尾に半角スペース）
その後Start-Mac.commandをターミナルへドラッグし、Enterを押してください。
macOSの確認画面が出た場合は、ファイルの入手元と内容を確認したうえで判断してください。
セキュリティ設定を一括で無効にする操作は必要ありません。

PythonのSSL証明書エラーが出る場合:
Python公式インストーラ同梱のInstall Certificates.commandを実行してください。

【アップデート】
取得できなくなった場合は、起動中のMac版をControl + Cで終了し、
Update-Mac.commandを開いてから再起動してください。

【対応範囲】
・macOS / Python 3.10以上 / インターネット接続
・通常の動画とShortsの単一URL
・画質上限: 1080p、720p、480p
・MP4（映像＋音声）。可能な場合はH.264とAACを優先します。
・動画は2時間以内、最終ファイルは2GBまで。1件ずつ処理します。
・画質は元動画や取得できる形式により、指定より低くなることがあります。
・動画の取得制限やYouTubeの仕様変更によって利用できない場合があります。
・非公開、会員限定、年齢制限、有料コンテンツ、ライブ配信には対応しません。
・CookieやGoogleアカウントへのログイン情報を入力する機能はありません。

【構成】
画面と保存処理は127.0.0.1:8765（お使いのMac内）で動作します。
動画URLはYouTubeへの取得リクエストに使われます。
動画ファイルはmarkekitのサーバーへアップロードしません。
必要なプログラムは、このフォルダの.venv内にインストールされます。
アンインストールは、起動を終了してこのフォルダを削除してください。
保存済みの動画はダウンロード/markekitに残ります。

【利用するプログラム】
yt-dlp（Unlicense）: https://github.com/yt-dlp/yt-dlp
yt-dlp-ejs: https://github.com/yt-dlp/ejs
imageio-ffmpeg（BSD、FFmpegバイナリは別ライセンス）:
https://github.com/imageio/imageio-ffmpeg
deno（MIT）: https://pypi.org/project/deno/
これらはセットアップ時にPyPIから取得します。バイナリは本ZIPに含みません。

自分が権利を持つ動画、またはダウンロードの許可を得た動画に利用し、
YouTubeの利用条件もご確認ください。YouTubeの公式サービスではありません。
自分の動画はYouTube Studioからの公式ダウンロードも利用できます。
https://support.google.com/youtube/answer/56100?hl=ja
