Package: twspace-dl
Twspace-dlA python module to download twitter spaces.ScreensotsGUICLIRequirementsffmpegif not using portable binaries.A logged in user's cookies file exported from Twitter in theNetscape format.InstallGUIUse this if you're not sure.From portable binariesWindowsFrom sourcepipinstallgit+https://github.com/HoloArchivists/twspace-dl@gooeyCLIFrom portable binariesWindowsFrom PyPIpipinstalltwspace-dlFrom sourcepipinstallgit+https://github.com/HoloArchivists/twspace-dlUsagetwspace_dl-ispace_url-cCOOKIE_FILEWith binariesWindows.\twspace_dl.exe-ispace_url-cCOOKIE_FILEFeaturesHere's the output of the help optionusage: twspace_dl [-h] [-v] [-s] [-k] [-l] -c COOKIE_FILE
                  [-i SPACE_URL | -U USER_URL] [-d DYN_URL] [-f URL] [-M PATH]
                  [-o FORMAT_STR] [-m] [-p] [-u] [--write-url URL_OUTPUT] [-e]

Script designed to help download twitter spaces

options:
  -h, --help            show this help message and exit
  -v, --verbose
  -s, --skip-download
  -k, --keep-files
  -l, --log             create logfile
  -c COOKIE_FILE, --input-cookie-file COOKIE_FILE
                        cookies file in the Netscape format. The specs of the
                        Netscape cookies format can be found here:
                        https://curl.se/docs/http-cookies.html. The cookies
                        file is now required due to the Twitter API change
                        that prohibited guest user access to Twitter API
                        endpoints on 2023-07-01.

input:
  -i SPACE_URL, --input-url SPACE_URL
  -U USER_URL, --user-url USER_URL
  -d DYN_URL, --from-dynamic-url DYN_URL
                        use the dynamic url for the processes(useful for ended
                        spaces) example: https://prod-fastly-ap-northeast-
                        1.video.pscp.tv/Transcoding/v1/hls/zUUpEgiM0M18jCGxo2e
                        SZs99p49hfyFQr1l4cdze-Sp4T-
                        DQOMMoZpkbdyetgfwscfvvUkAdeF-
                        I5hPI4bGoYg/non_transcode/ap-northeast-1/periscope-
                        replay-direct-prod-ap-northeast-1-public/audio-
                        space/dynamic_playlist.m3u8?type=live
  -f URL, --from-master-url URL
                        use the master url for the processes(useful for ended
                        spaces) example: https://prod-fastly-ap-northeast-
                        1.video.pscp.tv/Transcoding/v1/hls/YRSsw6_P5xUZHMualK5
                        -ihvePR6o4QmoZVOBGicKvmkL_KB9IQYtxVqm3P_vpZ2HnFkoRfar4
                        _uJOjqC8OCo5A/non_transcode/ap-northeast-1/periscope-
                        replay-direct-prod-ap-northeast-1-public/audio-
                        space/master_playlist.m3u8
  -M PATH, --input-metadata PATH
                        use a metadata json file instead of input url (useful
                        for very old ended spaces)

output:
  -o FORMAT_STR, --output FORMAT_STR
  -m, --write-metadata  write the full metadata json to a file
  -p, --write-playlist  write the m3u8 used to download the stream(e.g. if you
                        want to use another downloader)
  -u, --url             display the master url
  --write-url URL_OUTPUT
                        write master url to file
  -e, --embed-cover     embed user avatar as cover artFormatYou can use the following identifiers for the formatting%(title)s%(id)s%(start_date)s%(creator_name)s%(creator_screen_name)s%(url)s%(creator_id)sExample:[%(creator_screen_name)s]-%(title)s|%(start_date)sKnown ErrorsChanging ID3 metadata in HLS audio elementary stream is not implemented....This is an error in ffmpeg that does not affect twspace_dl at all as far as I know.ServiceTo run as a systemd service please refer tohttps://github.com/HoloArchivists/twspace-dl/blob/main/SERVICE.mdDockerRun onceUse${pwd}in powershell, or$(pwd)in bashdockerrun--rm-v${pwd}:/outputryu1845/twspace-dl-ispace_urlRun as monitoring serviceUsing a cookie can help solve some problem with the twitter api. However, using one is not necessary.Without cookieDownload thedocker-compose.yml,.env,monitor.shfiles and put them in a folder namedtwspace-dl.Edit.envand fill in the Twitter username you want to monitor.[Optional] If you want to used a cookies file, put it into the folder and named itcookies.txt.docker-compose up -d