CGJU
CGJU
1er juin 2026 · Temps de lecture 7 minutes
Erreur 403 Forbidden
403 Forbidden est l'une des erreurs les plus courantes lors du téléchargement vidéo, indiquant que le serveur a compris la demande mais refuse l'autorisation d'accès. Cela est généralement dû au mécanisme de protection anti-vol de lien du site.
Causes courantes de l'erreur 403
- Protection anti-vol Referer : le serveur vérifie le champ Referer dans l'en-tête de requête et n'autorise que les demandes provenant de domaines spécifiques
- Authentification Cookie/Session : nécessite une connexion ou une session spécifique pour accéder
- Restriction IP : le serveur limite l'accès de certaines adresses IP
- Détection User-Agent : le serveur refuse les demandes non navigateur
- Signature expirée : le lien vidéo comporte des paramètres de signature avec une limite de temps
Méthodes de résolution
1. Falsifier le Referer
Définissez l'en-tête Referer correct dans l'outil de téléchargement pour simuler une demande provenant de la page où se trouve la vidéo. Exemple FFmpeg :
ffmpeg -headers "Referer: https://example.com/video-page" \
-i "https://example.com/stream.m3u8" -c copy output.mp4
2. Définir le User-Agent
Utilisez la chaîne User-Agent du navigateur pour simuler une demande de navigateur réel :
ffmpeg -user_agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" \
-i "https://example.com/stream.m3u8" -c copy output.mp4
3. Utiliser des cookies
Si vous devez vous connecter pour regarder, exportez les cookies du navigateur puis utilisez-les lors du téléchargement :
ffmpeg -headers "Cookie: sessionid=abc123; user=test" \
-i "https://example.com/stream.m3u8" -c copy output.mp4
Problème CORS inter-domaines
CORS (Cross-Origin Resource Sharing) est un mécanisme de sécurité du navigateur qui limite le chargement de ressources à partir d'une origine différente par une page Web. On le rencontre fréquemment lors de la lecture ou du téléchargement de vidéos sur le Web.
Qu'est-ce que CORS
Lorsque le code JavaScript de la page A (domaine a.com) tente de demander une ressource du domaine b.com, le navigateur envoie d'abord une demande préliminaire (OPTIONS) pour demander à b.com s'il autorise l'accès de a.com. Si l'en-tête de réponse de b.com ne comporte pas de configuration CORS correcte, le navigateur bloque la demande.
En-têtes de réponse liés à CORS
Access-Control-Allow-Origin : domaine d'origine autorisé
Access-Control-Allow-Methods : méthodes HTTP autorisées
Access-Control-Allow-Headers : en-têtes de demande autorisés
Access-Control-Allow-Credentials : autorisation de transporter des cookies
Access-Control-Max-Age : temps de cache de la demande préliminaire
Pistes de résolution
Pour les développeurs, si vous contrôlez le serveur vidéo, vous pouvez configurer les en-têtes de réponse CORS pour autoriser l'accès inter-domaines. Pour les utilisateurs ordinaires, vous pouvez essayer les méthodes suivantes :
- Utiliser un lecteur de bureau (comme VLC) au lieu d'un lecteur Web
- Utiliser une extension de navigateur pour désactiver CORS (uniquement pour les tests)
- Mettre en place un serveur proxy pour transférer les demandes
- Utiliser un outil de téléchargement prenant en charge le proxy
Méthodes de récupération de liens M3U8
De nombreux sites vidéo utilisent le streaming HLS, mais le lien M3U8 n'est pas directement affiché sur la page. Voici plusieurs méthodes de récupération courantes.
Méthode 1 : outils de développement du navigateur
C'est la méthode la plus courante et la plus fiable :
- Sur la page vidéo, appuyez sur F12 pour ouvrir les outils de développement
- Basculez vers le panneau Network (Réseau)
- Saisissez m3u8 dans la zone de filtre
- Actualisez la page et lisez la vidéo
- Trouvez le fichier .m3u8 dans les demandes réseau, copiez le lien par clic droit
Méthode 2 : afficher le code source de la page
Certains sites incluent directement l'adresse M3U8 dans le code source de la page :
- Sur la page vidéo, faites un clic droit et choisissez "Afficher le code source de la page"
- Appuyez sur Ctrl+F pour rechercher .m3u8
- Trouvez le lien M3U8 complet
Méthode 3 : utiliser des extensions de navigateur
Certaines extensions de navigateur peuvent détecter et extraire automatiquement les adresses vidéo :
- Video DownloadHelper : prend en charge l'extraction de vidéos de plusieurs formats
- HLS Stream Detector : spécialisé dans la détection de flux HLS
- Maozhua (Cattrap) : extension chinoise de détection de ressources média
Méthode 4 : utiliser des outils de capture de paquets
Pour les sites complexes, vous pouvez utiliser des outils de capture de paquets pour analyser toutes les demandes réseau :
- Charles : outil de capture courant sur Mac/Windows
- Fiddler : outil de capture classique sur plateforme Windows
- Wireshark : analyseur de protocole réseau puissant
Traitement de flux chiffrés AES-128
De nombreuses vidéos HLS utilisent le chiffrement AES-128, chaque segment TS est chiffré et nécessite une clé pour être déchiffré et lu.
Comment déterminer si c'est chiffré
Ouvrez le fichier M3U8, si vous voyez la balise #EXT-X-KEY, cela signifie que la vidéo est chiffrée :
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-KEY:METHOD=AES-128,URI="key.key",IV=0x1234567890abcdef
#EXTINF:10.0,
segment0.ts
#EXTINF:10.0,
segment1.ts
#EXT-X-ENDLIST
Description des paramètres de chiffrement
METHOD=AES-128 : méthode de chiffrement AES-128
URI="key.key" : adresse du fichier de clé
IV=0x... : vecteur d'initialisation (facultatif, utilise par défaut le numéro de séquence du segment)
Comment traiter les flux chiffrés
Tant que vous pouvez obtenir la clé, FFmpeg peut déchiffrer et télécharger automatiquement la vidéo HLS chiffrée :
ffmpeg -i "https://example.com/stream.m3u8" -c copy output.mp4
FFmpeg lit automatiquement l'adresse de la clé dans M3U8, télécharge la clé et déchiffre. Mais attention :
- Le fichier de clé doit être accessible normalement (il peut aussi avoir une protection anti-vol)
- Si l'adresse de la clé est un chemin relatif, FFmpeg concatène automatiquement l'adresse complète
- Certains sites ont une logique plus complexe pour l'obtention de la clé, ce qui peut nécessiter un traitement supplémentaire
Explication de la protection DRM
DRM (Digital Rights Management) est un mécanisme de protection plus avancé que AES-128, couramment utilisé sur les plates-formes vidéo payantes.
Solutions DRM courantes
- Widevine : solution DRM de Google, prise en charge par Android et le navigateur Chrome
- FairPlay : solution DRM d'Apple, prise en charge par iOS et Safari
- PlayReady : solution DRM de Microsoft
- ChinaDRM : norme DRM chinoise
Différence entre DRM et AES-128
| Caractéristique |
AES-128 |
DRM |
| Obtention de la clé |
Téléchargement direct depuis l'adresse dans M3U8 |
Nécessite d'obtenir via un serveur d'autorisation |
| Sécurité de la clé |
Faible, la clé peut être interceptée |
Élevée, la clé est protégée par le matériel |
| Téléchargement et déchiffrement possibles |
Oui (avec la clé) |
Très difficile |
| Scénarios d'application |
Sites vidéo ordinaires |
Vidéos payantes, films, etc. |
Peut-on télécharger des vidéos DRM ?
Les vidéos protégées par DRM sont très difficiles à télécharger et à cracker directement. Les vidéos DRM des canaux officiels (comme Netflix, Disney+, etc.) ont des mécanismes de protection stricts, notamment :
- La clé n'apparaît pas en clair dans la mémoire
- Utilisation de puces de sécurité ou d'environnements d'exécution de confiance
- La clé de chaque appareil est différente
- Mise à jour et amélioration continues des mécanismes de protection
Pour le contenu protégé par DRM, il est recommandé de le regarder via des canaux légaux et de respecter le droit d'auteur.
Protection anti-vol Referer
La protection anti-vol Referer est la méthode de protection vidéo la plus courante et la plus facile à contourner.
Principe
Lorsque le navigateur demande une ressource, il ajoute le champ Referer dans l'en-tête de demande, indiquant à partir de quelle page la demande actuelle a été initiée. Le serveur décide d'autoriser ou non l'accès en vérifiant si Referer se trouve dans la liste blanche.
Méthodes de contournement
- Définir le bon Referer : ajoutez l'adresse de la page vidéo dans l'en-tête de demande
- Supprimer le Referer : certains serveurs ne vérifient que s'il est vide, pas son contenu
- Utiliser des outils spéciaux : de nombreux outils de téléchargement prennent en charge le Referer personnalisé
Définir Referer avec FFmpeg
ffmpeg -headers "Referer: https://www.example.com/videos/123" \
-i "https://cdn.example.com/stream.m3u8" -c copy output.mp4
Définir Referer avec yt-dlp
yt-dlp --referer "https://www.example.com/videos/123" \
"https://www.example.com/videos/123"
Autres problèmes courants
1. La vidéo n'a que du son après téléchargement
Causes possibles :
- Le format de codage vidéo n'est pas pris en charge par le lecteur (par exemple HEVC/H.265 nécessite des plugins supplémentaires sur certains lecteurs)
- Le fichier téléchargé est incomplet, le flux vidéo est corrompu
- Problème de format de conteneur, essayez de ré-encapsuler en MP4
Solution : essayez de lire avec VLC ou ré-encodez avec FFmpeg.
2. La vitesse de téléchargement est très lente
Causes possibles :
- Limitation de vitesse du serveur, limitant la vitesse par connexion
- Latence réseau élevée, surcoût important pour le téléchargement par segments
- Segments TS trop petits, nombreuses demandes HTTP
Solution : utilisez un outil prenant en charge le téléchargement multithread (comme N_m3u8DL-RE) ou utilisez un proxy pour accélérer.
3. Le téléchargement échoue à mi-chemin
Causes possibles :
- Réseau instable, connexion interrompue
- Lien vidéo expiré, doit être récupéré à nouveau
- Limite du nombre de connexions serveur
Solution : utilisez un outil de téléchargement prenant en charge la reprise sur interruption, ou choisissez un environnement réseau stable.
4. Comment télécharger un flux en direct
Les flux en direct sont générés en continu et n'ont pas de point de fin fixe. Vous pouvez utiliser les méthodes suivantes pour enregistrer :
- Enregistrement direct dans un fichier avec FFmpeg
- Utilisation de logiciels d'enregistrement en direct comme OBS Studio
- Utilisation d'outils spécialisés de téléchargement en direct comme streamlink
Exemple d'enregistrement de direct avec FFmpeg :
ffmpeg -i "https://example.com/live.m3u8" -c copy -bsf:a aac_adtstoasc output.mp4
Remarques
Lors du téléchargement de vidéos, veuillez noter les points suivants :
- Respecter le droit d'auteur : ne téléchargez que les vidéos que vous avez le droit d'utiliser, ne violez pas la propriété intellectuelle d'autrui
- Utilisation raisonnable : à des fins d'étude et de recherche personnelles, ne pas utiliser à des fins commerciales
- Respecter les règles du site : ne pas faire de demandes fréquentes qui mettraient le serveur sous pression
- Attention à la sécurité : utilisez des outils officiels, évitez de télécharger des logiciels malveillants
Conclusion
On rencontre divers problèmes lors du téléchargement vidéo, de la simple erreur 403 à la protection DRM complexe. Comprendre le principe de ces problèmes et leurs méthodes de résolution peut vous aider à traiter divers scénarios plus efficacement.
Si vous devez télécharger une vidéo M3U8 et la convertir au format MP4, vous pouvez essayer notre outil de conversion M3U8 vers MP4 en ligne, aucune installation de logiciel n'est nécessaire, la conversion se fait dans le navigateur.