ytdl-org / youtube-dl

Command-line program to download videos from YouTube.com and other video sites
http://ytdl-org.github.io/youtube-dl/
The Unlicense
131.2k stars 9.93k forks source link

TV5MONDE broken #29097

Open forapreder opened 3 years ago

forapreder commented 3 years ago

Checklist

Verbose log

PASTE VERBOSE LOG HERE

Microsoft Windows [Version 10.0.19042.985] (c) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.

C:\Users\Internet>youtube-dl -v https://revoir.tv5monde.com/toutes-les-videos/cinema/plaire-aimer-et-courir-vite [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['-v', 'https://revoir.tv5monde.com/toutes-les-videos/cinema/plaire-aimer-et-courir-vite'] [debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251 [debug] youtube-dl version 2021.05.16 [debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041 [debug] exe versions: none [debug] Proxy map: {} [TV5MondePlus] plaire-aimer-et-courir-vite: Downloading webpage Traceback (most recent call last): File "main.py", line 19, in File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl__init.py", line 475, in main File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl__init__.py", line 465, in _real_main File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl\YoutubeDL.py", line 2069, in download File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl\YoutubeDL.py", line 808, in extract_info File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl\YoutubeDL.py", line 815, in wrapper File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl\YoutubeDL.py", line 836, in extract_info File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl\extractor\common.py", line 534, in extract File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp8rlhijs0\build\youtube_dl\extractor\tv5mondeplus.py", line 66, in _real_extract AttributeError: 'list' object has no attribute 'get'

C:\Users\Internet>

Description

WRITE DESCRIPTION HERE 2021-05-21 there is no way to download from the site https://revoir.tv5monde.com. It is impossible to download this video and it is impossible to download any other video.

forapreder commented 3 years ago

youtube-dl version 2021.06.06 also cannot download from the site TV5MONDE

C:\Users\Internet>youtube-dl -v https://revoir.tv5monde.com/toutes-les-videos/cinema/liberty-belle [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['-v', 'https://revoir.tv5monde.com/toutes-les-videos/cinema/liberty-belle'] [debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251 [debug] youtube-dl version 2021.06.06 [debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041 [debug] exe versions: none [debug] Proxy map: {} [TV5MondePlus] liberty-belle: Downloading webpage Traceback (most recent call last): File "main.py", line 19, in File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl__init.py", line 475, in main File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl__init__.py", line 465, in _real_main File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\YoutubeDL.py", line 2069, in download File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\YoutubeDL.py", line 808, in extract_info File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\YoutubeDL.py", line 815, in wrapper File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\YoutubeDL.py", line 836, in extract_info File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\extractor\common.py", line 534, in extract File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\extractor\tv5mondeplus.py", line 66, in _real_extract AttributeError: 'list' object has no attribute 'get'

C:\Users\Internet>

e-nemo commented 3 years ago

Hi,

I've encountered the same issue. revoir.tv5monde.com is handled by [TV5MondePlus] extractor but www.tv5mondeplus.com is a totally different site. To my opinion, revoir is dedicated to replay and must be handled by a new extractor.

Regards Nemo

forapreder commented 3 years ago

Hi,

I've encountered the same issue. revoir.tv5monde.com is handled by [TV5MondePlus] extractor but www.tv5mondeplus.com is a totally different site. To my opinion, revoir is dedicated to replay and must be handled by a new extractor.

Regards Nemo

www.tv5mondeplus.com - DRM protection. revoir.tv5monde.com - without DRM protection.

korli commented 3 years ago

diff --git a/youtube_dl/extractor/tv5mondeplus.py b/youtube_dl/extractor/tv5mondeplus.py
index b7fe082b9..02480631f 100644
--- a/youtube_dl/extractor/tv5mondeplus.py
+++ b/youtube_dl/extractor/tv5mondeplus.py
@@ -63,7 +63,7 @@ class TV5MondePlusIE(InfoExtractor):
             webpage, 'video player loader'))

         video_files = self._parse_json(
-            vpl_data['data-broadcast'], display_id).get('files', [])
+            vpl_data['data-broadcast'], display_id)
         formats = []
         for video_file in video_files:
             v_url = video_file.get('url')
forapreder commented 3 years ago
diff --git a/youtube_dl/extractor/tv5mondeplus.py b/youtube_dl/extractor/tv5mondeplus.py
index b7fe082b9..02480631f 100644
--- a/youtube_dl/extractor/tv5mondeplus.py
+++ b/youtube_dl/extractor/tv5mondeplus.py
@@ -63,7 +63,7 @@ class TV5MondePlusIE(InfoExtractor):
             webpage, 'video player loader'))

         video_files = self._parse_json(
-            vpl_data['data-broadcast'], display_id).get('files', [])
+            vpl_data['data-broadcast'], display_id)
         formats = []
         for video_file in video_files:
             v_url = video_file.get('url')

I'm not a programmer. I do not understand this. I have used youtube-dl.exe for Windows 10 only.

korli commented 3 years ago

I'm not a programmer. I do not understand this. I have used youtube-dl.exe for Windows 10 only.

It's a patch for people using youtube-dl from sources with https://github.com/ytdl-org/youtube-dl#developer-instructions

forapreder commented 3 years ago

I'm not a programmer. I do not understand this. I have used youtube-dl.exe for Windows 10 only.

It's a patch for people using youtube-dl from sources with https://github.com/ytdl-org/youtube-dl#developer-instructions

Thanks, but it's hard for me

korli commented 3 years ago

Thanks, but it's hard for me

A fix would be available in the next version of yt-dlp