Warning: Some posts on this platform may contain adult material intended for mature audiences only. Viewer discretion is advised. By clicking ‘Continue’, you confirm that you are 18 years or older and consent to viewing explicit content.
I’ve been doing this with Selenium+SeleniumWire in Python. Here’s a basic script that will open a (Selenium) Firefox instance, load the URL passed in, wait for you to click through the various popups etc. and shell out to yt-dlp to download the m3u8. Requires Python, Firefox, and yt-dlp. I don’t see any reason it wouldn’t work on platforms other than Linux, but I haven’t tested at all. It could be updated to click through the play button/popups automatically but I cbf.
$ python ./getm3u.py 'https://vidsrc.me/embed/[-]'
Command line: yt-dlp --referer https://[-].com/ https://tmstr.[-].com/stream_new/d6BoyFydhIoAEakvYTGZHhYA7A9aEkwpA1SDsb1Xxd3fYFxxaPzUvIost8zBAjouTHLFNGFwRy/master.m3u8
[generic] Extracting URL: https://tmstr.[-].com/stream_new/d6BoyFydhIoAEakvYTGZHhYA7A9aEkwpA1SDsb1Xxd3fYFxxaPzUvIost8zBAjouTHLFNGFwRy/master.m3u8
[generic] master: Downloading webpage
[generic] master: Downloading m3u8 information
[info] master: Downloading 1 format(s): 2701
[hlsnative] Downloading m3u8 manifest
WARNING: Live HLS streams are not supported by the native downloader. If this is a livestream, please add "--downloader ffmpeg --hls-use-mpegts" to your command
[hlsnative] Total fragments: 955
[download] Destination: master [master].mp4
[download] 0.7% of ~ 2.35GiB at 989.83KiB/s ETA 34:15 (frag 7/955)
If code isn’t your thing OP I’d be happy to run it on your URL and send the downloaded file over Matrix or something.
I’ve been doing this with Selenium+SeleniumWire in Python. Here’s a basic script that will open a (Selenium) Firefox instance, load the URL passed in, wait for you to click through the various popups etc. and shell out to
yt-dlp
to download the m3u8. Requires Python, Firefox, and yt-dlp. I don’t see any reason it wouldn’t work on platforms other than Linux, but I haven’t tested at all. It could be updated to click through the play button/popups automatically but I cbf.Script
#!/usr/bin/env python3 import sys import threading import subprocess import selenium.webdriver from seleniumwire import webdriver firefox_opts = selenium.webdriver.FirefoxOptions() b = webdriver.Firefox(options = firefox_opts) done = threading.Event() cmdline = None def res_interceptor(req, res) -> None: global cmdline if req.url.endswith('master.m3u8'): headers = dict(req.headers) cmdline = ['yt-dlp', '--referer', headers.get('referer', ''), req.url] done.set() b.response_interceptor = res_interceptor b.get(sys.argv[1]) done.wait() b.quit() assert cmdline is not None print(f"Command line: {' '.join(cmdline)}") subprocess.run(cmdline)
Usage
Install Python packages:
$ pip install selenium selenium-wire blinker==1.7.0
Run the script (redacted example output):
$ python ./getm3u.py 'https://vidsrc.me/embed/[-]' Command line: yt-dlp --referer https://[-].com/ https://tmstr.[-].com/stream_new/d6BoyFydhIoAEakvYTGZHhYA7A9aEkwpA1SDsb1Xxd3fYFxxaPzUvIost8zBAjouTHLFNGFwRy/master.m3u8 [generic] Extracting URL: https://tmstr.[-].com/stream_new/d6BoyFydhIoAEakvYTGZHhYA7A9aEkwpA1SDsb1Xxd3fYFxxaPzUvIost8zBAjouTHLFNGFwRy/master.m3u8 [generic] master: Downloading webpage [generic] master: Downloading m3u8 information [info] master: Downloading 1 format(s): 2701 [hlsnative] Downloading m3u8 manifest WARNING: Live HLS streams are not supported by the native downloader. If this is a livestream, please add "--downloader ffmpeg --hls-use-mpegts" to your command [hlsnative] Total fragments: 955 [download] Destination: master [master].mp4 [download] 0.7% of ~ 2.35GiB at 989.83KiB/s ETA 34:15 (frag 7/955)
If code isn’t your thing OP I’d be happy to run it on your URL and send the downloaded file over Matrix or something.