# Automatic archiving with Spicadox's fork of auto-ytarchive-raw (Windows) *** [TOC2] *** ## Prerequisites [Some up-to-date Python 3](https://www.python.org/downloads/) [Spicadox's auto-ytarchive-raw](https://github.com/Spicadox/auto-ytarchive-raw/archive/refs/heads/master.zip) [FFmpeg binaries](https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-win64-gpl.zip) [ytarchive](https://github.com/Kethsar/ytarchive/releases/download/latest/ytarchive_windows_amd64.zip) [ytarchive-raw-go](https://github.com/HoloArchivists/ytarchive-raw-go/releases/latest/download/ytarchive-raw-go-windows-amd64.exe) *** ## Setting up (automatic retrieval of privated streams) !!! warning Before proceeding you should have file extensions turned on: ![turning on file extensions](https://files.catbox.moe/z6d82o.png) After downloading everything you should have this: ![files downloaded](https://files.catbox.moe/wwsbnu.png) 1. Unpack every zip archive: ![unpacked archives](https://files.catbox.moe/8dsjp6.png) 2. Move every exe file from their respective folder above, FFmpeg files will be in bin folder: ![executables in main folder](https://files.catbox.moe/y9o1en.png) 3. Move every exe file to ==auto-ytarchive-raw== folder: ![moving files to auto-yta folder](https://files.catbox.moe/kounxo.png) 4. Rename ytarchive-raw-go-windows-amd64.exe to ==ytarchive-raw-go.exe== ![rename yta-raw-go](https://files.catbox.moe/qxdqbn.png) 5. Click on the address bar and type cmd before it ![open cmd](https://files.catbox.moe/rtr6cg.gif) Paste inside `pip install -r requirements.txt` and wait until it's done then close the window. 6. Open ==channels.json.example== file in Notepad and replace the contents with ``` json { "idol": "UCRMs0dRR4MEnCftyk6l1tvQ", "Kattarina Qutie Ch. idol": "UCMmy_EmxnYQ8aar8fNZrumw", "Nikki Rei Ch. idol": "UCBnmfjpmhGxao6v54fIIMUA", "Yuko Yurei Ch. idol-EN": "UCcIcMRVpNqWQn4WnDhRASAw", "Juna Unagi Ch. idol-EN": "UCTFCSCPvqjXEs3zq91aeOVg", "Rin Penrose Ch. idol-EN": "UCpZIbzoEC_3rZglErpQkbDg", "Pochi Wanmaru Ch. idol-EN": "UCP0csSl19lOSNwJGCFsJqAQ", "Fuyo Cloverfield Ch. idol-EN": "UC8zgKaS8LiyL28mdhRC2nBg", "Riro Ron Ch. idol-EN": "UCGaN6JMiDHZSkPXt-82b6yQ", "Roca Rourin Ch. idol-EN": "UC9xR7uN0x5a6CH3Uopq7czA", "Poko Rakun Ch. idol-EN": "UCk2k1y-d24nFyVCvyxnAaYA", "Kai Saikota Ch. idol-EN": "UCC4hjJp_MttwfZcuWc0OpVQ", "Momo Otako Ch. idol-EN": "UCe0JiGnjPfEwEIbWASbOimw", "Coni Confetti Ch. idol-EN": "UCUfgKgCxtFs1ZPlyiM3JcTw" } ``` should look like: ![channels json file contents](https://files.catbox.moe/3afrld.png) 7. Save the file as ==channels.json== (remove any .example or .txt there): ![save channels json](https://files.catbox.moe/w2n1nc.png) 8. Open ==const.py.example== Change lines: `ENABLE_PRIVATE_CHECK = False` to `ENABLE_PRIVATE_CHECK = True` `PRIVATED_DOWNLOAD = None` to `PRIVATED_DOWNLOAD = "privated\%(upload_date)s %(id)s"` Save as ==const.py== 9. Open ==text.py.example== Change line: `MULTI_MANIFEST_MESSAGE = "[{video_id}](https://youtu.be/{video_id}) has multiple manifest on [{channel_name}](https://www.youtube.com/channel/{channel_id})!"` to `MULTI_MANIFEST_MESSAGE = ""` Save as ==text.py== 10. Create a bat file with this inside: ```bat @echo off :start python index.py goto start ``` Double clicking the bat will start the program. You are all set. ## Discord integration Edit ==const.py== `DISCORD_WEBHOOK_URL = None` to `DISCORD_WEBHOOK_URL = "your webhook url"` [(how to get the url tutorial)](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) `DISCORD_SEND_FILES = False` to `DISCORD_SEND_FILES = True` Edit callbacks to: ``` json ENABLED_MODULES = { "discord": True, "telegram": False } ``` ## Automatic recording of member streams 1. Get cookies.txt file You can generate it from an extension: [Firefox](https://addons.mozilla.org/en-GB/firefox/addon/get-cookies-txt-locally/), [Chrome](https://chrome.google.com/webstore/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc) Place it in the folder with other files: ![cookies txt in the folder](https://files.catbox.moe/bnv15u.png) 2. Edit ==const.py== `COOKIE = None` to `COOKIE = "cookies.txt"` `MEMBER_DOWNLOAD = None` to `MEMBER_DOWNLOAD = "member\%(upload_date)s %(id)s"` !!! info If you wish to only retrieve ==privated== member streams, don't touch the `MEMBER_DOWNLOAD = None` part. ## Automatic recording of other live streams Edit ==const.py== `DOWNLOAD = None` to `DOWNLOAD = "live\%(upload_date)s %(id)s"` `PREMIERE_DOWNLOAD = None` to `PREMIERE_DOWNLOAD = "premiere\%(upload_date)s %(id)s"` ## Rate limited? Edit ==const.py== `TIME_BETWEEN_CHECK = 10` to `TIME_BETWEEN_CHECK = 15` or even higher `PRIVATED_DOWNLOAD_THREADS = 24` to `PRIVATED_DOWNLOAD_THREADS = 16` -> from bonkers 🌞 with love ->