diff --git a/README.md b/README.md index 5f7c3c6..481374b 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,8 @@ E.g. https://github.com/jeb5/YouTube-Subscriptions-RSS ## cookies > [!WARNING] -> Your account **MAY** be banned when using cookies ! +> Your account **MAY** be banned when using cookies ! Consider using a +> throw-away account. E.g. from Chromium: @@ -86,10 +87,51 @@ E.g. from Chromium: yt-dlp --cookies-from-browser chromium --cookies cookies.txt ``` +Or using an add-on: https://addons.mozilla.org/en-US/firefox/addon/cookies-txt/ + +## pot token + +Youtube has started requiring proof-of-origin tokens for some players, +and it may help not getting hit with the "sign in to confirm you are not +a bot" together with cookies. + +Either add a manually generated POT to the config: `po_token = +"{TOKEN}"` or, set up bgutils[1] with the youtube extractor to do POT +generation automatically. + +``` +pipx install yt-dlp +pipx inject yt-dlp yt-dlp-get-pot +pipx inject yt-dlp bgutil-ytdlp-pot-provider +``` + +Then change the `provider.youtube` option for `cmd` to the `yt-dlp` +binary in the modified venv, e.g. `/home/varl/.local/bin/yt-dlp`. + +On the same machine, run the bgutils http server, e.g. with compose: + +``` + bgutil: + image: brainicism/bgutil-ytdlp-pot-provider + container_name: bgutil + restart: unless-stopped + ports: + - 4416:4416 +``` + +If using default ports and it's available on localhost, `yt-dlp` will +pick up the plugin automatically and can be verified in the logs. + +[1]: https://github.com/Brainicism/bgutil-ytdlp-pot-provider + ## scheduling ### systemd +> [!TIP] +> Remember to change the `ExecStart` path to the venv'ed `yt-dlp` +> binary if using it. + `~/.config/systemd/user/subsyt-archival.service` ``` [Unit]