Ideenquelle

widefrog

widefrog est un programme permettant de télécharger des vidéos sur des plateformes de streaming. Intrinsèquement, il ne s’agit pas de piratage car widefrog n’outrepasse pas les accès demandés par les services. Autrement dit, si vous souhaitez récupérer des vidéos sur auvio.be (lié à la télévision belge francophone), vous devez avoir un compte sur le site et avoir une IP belge. widefrog permet donc juste de récupérer les vidéos facilement. widefrog est diffusé sur le forum de videohelp.

#Outils préalables Pour utiliser widefrog, il faut quelques outils préalables :

  1. Update/upgrade le système sudo apt-get update && sudo apt-get upgrade

  2. Python, ffmpeg, mkvmerge sudo apt-get install python3 python3-pip unrar zip unzip ffmpeg mkvtoolnix mkvtoolnix-gui mediainfo mediainfo-gui aria2 Dans le guide trouvé sur le forum, il recommande également d’installer curl, git, nano, vlc, mpv et asciinema. Autant les premiers sont déjà installés, autant vlc et mpv sont deux programmes au même usage.

  3. N_m3u8DL-RE

curl -kLO https://github.com/nilaoda/N_m3u8DL-RE/releases/download/v0.3.0-beta/N_m3u8DL-RE_v0.3.0-beta_linux-x64_20241203.tar.gz

## (Debian 13/Trixie does not allow to unpack/untar directly into the "/usr/local/bin/" DIRectory);

# Check the package is OK;
gunzip -tv vimeo-dl_0.2.0_linux_amd64.tar.gz
# Check what is inside the TAR.GZ archive;
tar -tvvf N_m3u8DL-RE_v0.3.0-beta_linux-x64_20241203.tar.gz
# Unpack;
tar -xvf N_m3u8DL-RE_v0.3.0-beta_linux-x64_20241203.tar.gz N_m3u8DL-RE
# Move to "/usr/local/bin/";
sudo mv N_m3u8DL-RE /usr/local/bin/
# Make the BInary file "EXEcutable;
sudo chmod a+rx /usr/local/bin/N_m3u8DL-RE
# List the file;
ls -ilha /usr/local/bin/N*
# Check the version
N_m3u8DL-RE --version
  1. mp4decrypt
curl -kL https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip -o ~/Downloads/Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip
sudo unzip -j Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip 'Bento4-SDK-1-6-0-641.x86_64-unknown-linux/bin/*' -d /usr/local/bin/
ls -ilha /usr/local/bin/
mp4decrypt
mp4info
  1. shaka-packager
sudo curl -kL https://github.com/shaka-project/shaka-packager/releases/download/v2.6.1/packager-linux-x64 -o /usr/local/bin/shaka-packager
sudo chmod a+rx /usr/local/bin/shaka-packager
shaka-packager --version

L’idée est de pouvoir utiliser les programmes directement depuis n’importe quel dossier, juste en les appellant par leur nom.

#Installation de widefrog Quand c’est fait, il faut encore récupérer widefrog. La version à l’heure actuelle est la 3.2. Idéalement, extraire le fichier dans un dossier propre à widefrog. Pour la suite et afin d’éviter les soucis de version de packages Python, on active un environnement de travail :

pip install virtualenv
virtualenv venv
venv\Scripts\activate

On installe les dépendances :

#windows
FOR /F %k in (requirements.txt) DO ( if NOT # == %k ( pip install %k ) )
#linux
grep -v '^#' requirements.txt | xargs -n 1 pip install
#macos
grep -v '^#' requirements.txt | xargs -n 1 pip3 install

Et on peut également mettre à jour urllib3 (pas certain que ce soit utile):

pip install urllib3 --upgrade

On octroye des droits d’exécution aux parties de widefrog :

sudo chmod +x "terminal/*"

L’installation est normalement finie.

#Utilisation de widefrog Pour utiliser widefrog, il faut veiller à avoir l’environnement actif. Pour cela, quand nous sommes dans le dossier de widefrog, il faut utiliser la commande source myvenv/bin/activate. Pour sortir de l’environnement, il faut utiliser : deactivate

Première utilisation

Pour la première utilisation, il faut créer la configuration via

python widefrog.py
[INFO] The app_files\config.json file was created. Edit the file and run the program.

Avant d’éditer la configuration, vous pouvez utiliser les commandes suivantes pour en savoir plus :

python widefrog.py --help
python widefrog.py --config

Utilisation

Je reprends ici l’utilisation dont j’ai besoin, càd pour le site auvio. Une IP belge est nécessaire ainsi qu’un compte au service auvio. Je recopie les exemples données sur le forum qui permettent de comprendre comment cela fonctionne. :

#video
python widefrog.py "https://auvio.rtbf.be/media/attraction-attraction-s01-3018437"
python widefrog.py "https://auvio.rtbf.be/emission/titane-27377"
#audio
python widefrog.py "https://auvio.rtbf.be/media/un-jour-dans-le-sport-14-aout-2004-3164197"
#livestream video
python widefrog.py "https://auvio.rtbf.be/live/roland-garros-2024-31-mai-direct-tipik-526661"
#livestream audio
python widefrog.py "https://auvio.rtbf.be/chaine/classic-21-5" --query=:2::2
#list
python widefrog.py "https://auvio.rtbf.be/widget/19164" --query=:5::7
python widefrog.py "https://auvio.rtbf.be/widget/22508?context%5BprogramId%5D=8340" --query=:2::4
python widefrog.py "https://auvio.rtbf.be/emission/la-theorie-du-y-11043/bonus" --query=:6::7
python widefrog.py "https://auvio.rtbf.be/emission/pandore-20618" --query=:5::8
python widefrog.py "https://auvio.rtbf.be/chaine/musiq3-7" --query=:2::3
#series
python widefrog.py "https://auvio.rtbf.be/emission/le-cactus-4043" --query=2017:180:2018:5
python widefrog.py "https://auvio.rtbf.be/emission/l-art-du-crime-27164" --query=3:2:4:2

Il faut savoir que widefrog accepte également les fichiers en entrée. Les fichiers seront composés pour chaque ligne du lien à télécharger.

Tags: