[ard] Add suppor for plain ARD downloads (Fixes #3546)
[youtube-dl] / youtube_dl / extractor / __init__.py
1 from .abc import ABCIE
2 from .academicearth import AcademicEarthCourseIE
3 from .addanime import AddAnimeIE
4 from .adultswim import AdultSwimIE
5 from .aftonbladet import AftonbladetIE
6 from .anitube import AnitubeIE
7 from .aol import AolIE
8 from .allocine import AllocineIE
9 from .aparat import AparatIE
10 from .appletrailers import AppleTrailersIE
11 from .archiveorg import ArchiveOrgIE
12 from .ard import ARDIE, ARDMediathekIE
13 from .arte import (
14     ArteTvIE,
15     ArteTVPlus7IE,
16     ArteTVCreativeIE,
17     ArteTVConcertIE,
18     ArteTVFutureIE,
19     ArteTVDDCIE,
20     ArteTVEmbedIE,
21 )
22 from .auengine import AUEngineIE
23 from .bambuser import BambuserIE, BambuserChannelIE
24 from .bandcamp import BandcampIE, BandcampAlbumIE
25 from .bbccouk import BBCCoUkIE
26 from .bilibili import BiliBiliIE
27 from .blinkx import BlinkxIE
28 from .bliptv import BlipTVIE, BlipTVUserIE
29 from .bloomberg import BloombergIE
30 from .br import BRIE
31 from .breakcom import BreakIE
32 from .brightcove import BrightcoveIE
33 from .byutv import BYUtvIE
34 from .c56 import C56IE
35 from .canal13cl import Canal13clIE
36 from .canalplus import CanalplusIE
37 from .canalc2 import Canalc2IE
38 from .cbs import CBSIE
39 from .cbsnews import CBSNewsIE
40 from .ceskatelevize import CeskaTelevizeIE
41 from .channel9 import Channel9IE
42 from .chilloutzone import ChilloutzoneIE
43 from .cinemassacre import CinemassacreIE
44 from .clipfish import ClipfishIE
45 from .cliphunter import CliphunterIE
46 from .clipsyndicate import ClipsyndicateIE
47 from .clubic import ClubicIE
48 from .cmt import CMTIE
49 from .cnet import CNETIE
50 from .cnn import (
51     CNNIE,
52     CNNBlogsIE,
53 )
54 from .collegehumor import CollegeHumorIE
55 from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
56 from .condenast import CondeNastIE
57 from .cracked import CrackedIE
58 from .criterion import CriterionIE
59 from .crunchyroll import CrunchyrollIE
60 from .cspan import CSpanIE
61 from .d8 import D8IE
62 from .dailymotion import (
63     DailymotionIE,
64     DailymotionPlaylistIE,
65     DailymotionUserIE,
66 )
67 from .daum import DaumIE
68 from .dfb import DFBIE
69 from .dotsub import DotsubIE
70 from .dreisat import DreiSatIE
71 from .drtv import DRTVIE
72 from .dump import DumpIE
73 from .defense import DefenseGouvFrIE
74 from .discovery import DiscoveryIE
75 from .divxstage import DivxStageIE
76 from .dropbox import DropboxIE
77 from .ebaumsworld import EbaumsWorldIE
78 from .ehow import EHowIE
79 from .eighttracks import EightTracksIE
80 from .eitb import EitbIE
81 from .ellentv import (
82     EllenTVIE,
83     EllenTVClipsIE,
84 )
85 from .elpais import ElPaisIE
86 from .empflix import EmpflixIE
87 from .engadget import EngadgetIE
88 from .escapist import EscapistIE
89 from .everyonesmixtape import EveryonesMixtapeIE
90 from .exfm import ExfmIE
91 from .expotv import ExpoTVIE
92 from .extremetube import ExtremeTubeIE
93 from .facebook import FacebookIE
94 from .faz import FazIE
95 from .fc2 import FC2IE
96 from .firedrive import FiredriveIE
97 from .firstpost import FirstpostIE
98 from .firsttv import FirstTVIE
99 from .fivemin import FiveMinIE
100 from .fktv import (
101     FKTVIE,
102     FKTVPosteckeIE,
103 )
104 from .flickr import FlickrIE
105 from .fourtube import FourTubeIE
106 from .franceculture import FranceCultureIE
107 from .franceinter import FranceInterIE
108 from .francetv import (
109     PluzzIE,
110     FranceTvInfoIE,
111     FranceTVIE,
112     GenerationQuoiIE,
113     CultureboxIE,
114 )
115 from .freesound import FreesoundIE
116 from .freespeech import FreespeechIE
117 from .funnyordie import FunnyOrDieIE
118 from .gamekings import GamekingsIE
119 from .gameone import (
120     GameOneIE,
121     GameOnePlaylistIE,
122 )
123 from .gamespot import GameSpotIE
124 from .gamestar import GameStarIE
125 from .gametrailers import GametrailersIE
126 from .gdcvault import GDCVaultIE
127 from .generic import GenericIE
128 from .godtube import GodTubeIE
129 from .googleplus import GooglePlusIE
130 from .googlesearch import GoogleSearchIE
131 from .gorillavid import GorillaVidIE
132 from .goshgay import GoshgayIE
133 from .grooveshark import GroovesharkIE
134 from .hark import HarkIE
135 from .helsinki import HelsinkiIE
136 from .hentaistigma import HentaiStigmaIE
137 from .hotnewhiphop import HotNewHipHopIE
138 from .howcast import HowcastIE
139 from .howstuffworks import HowStuffWorksIE
140 from .huffpost import HuffPostIE
141 from .hypem import HypemIE
142 from .iconosquare import IconosquareIE
143 from .ign import IGNIE, OneUPIE
144 from .imdb import (
145     ImdbIE,
146     ImdbListIE
147 )
148 from .ina import InaIE
149 from .infoq import InfoQIE
150 from .instagram import InstagramIE, InstagramUserIE
151 from .internetvideoarchive import InternetVideoArchiveIE
152 from .iprima import IPrimaIE
153 from .ivi import (
154     IviIE,
155     IviCompilationIE
156 )
157 from .izlesene import IzleseneIE
158 from .jadorecettepub import JadoreCettePubIE
159 from .jeuxvideo import JeuxVideoIE
160 from .jove import JoveIE
161 from .jukebox import JukeboxIE
162 from .justintv import JustinTVIE
163 from .jpopsukitv import JpopsukiIE
164 from .kankan import KankanIE
165 from .keezmovies import KeezMoviesIE
166 from .khanacademy import KhanAcademyIE
167 from .kickstarter import KickStarterIE
168 from .keek import KeekIE
169 from .kontrtube import KontrTubeIE
170 from .krasview import KrasViewIE
171 from .ku6 import Ku6IE
172 from .la7 import LA7IE
173 from .lifenews import LifeNewsIE
174 from .liveleak import LiveLeakIE
175 from .livestream import (
176     LivestreamIE,
177     LivestreamOriginalIE,
178     LivestreamShortenerIE,
179 )
180 from .lynda import (
181     LyndaIE,
182     LyndaCourseIE
183 )
184 from .m6 import M6IE
185 from .macgamestore import MacGameStoreIE
186 from .mailru import MailRuIE
187 from .malemotion import MalemotionIE
188 from .mdr import MDRIE
189 from .metacafe import MetacafeIE
190 from .metacritic import MetacriticIE
191 from .ministrygrid import MinistryGridIE
192 from .mit import TechTVMITIE, MITIE, OCWMITIE
193 from .mitele import MiTeleIE
194 from .mixcloud import MixcloudIE
195 from .mlb import MLBIE
196 from .mpora import MporaIE
197 from .mofosex import MofosexIE
198 from .mojvideo import MojvideoIE
199 from .mooshare import MooshareIE
200 from .morningstar import MorningstarIE
201 from .motherless import MotherlessIE
202 from .motorsport import MotorsportIE
203 from .movieclips import MovieClipsIE
204 from .moviezine import MoviezineIE
205 from .movshare import MovShareIE
206 from .mtv import (
207     MTVIE,
208     MTVServicesEmbeddedIE,
209     MTVIggyIE,
210 )
211 from .musicplayon import MusicPlayOnIE
212 from .musicvault import MusicVaultIE
213 from .muzu import MuzuTVIE
214 from .myspace import MySpaceIE
215 from .myspass import MySpassIE
216 from .myvideo import MyVideoIE
217 from .naver import NaverIE
218 from .nba import NBAIE
219 from .nbc import (
220     NBCIE,
221     NBCNewsIE,
222 )
223 from .ndr import NDRIE
224 from .ndtv import NDTVIE
225 from .newgrounds import NewgroundsIE
226 from .newstube import NewstubeIE
227 from .nfb import NFBIE
228 from .nhl import NHLIE, NHLVideocenterIE
229 from .niconico import NiconicoIE
230 from .ninegag import NineGagIE
231 from .noco import NocoIE
232 from .normalboots import NormalbootsIE
233 from .novamov import NovaMovIE
234 from .nowness import NownessIE
235 from .nowvideo import NowVideoIE
236 from .npo import NPOIE
237 from .nrk import (
238     NRKIE,
239     NRKTVIE,
240 )
241 from .ntv import NTVIE
242 from .nytimes import NYTimesIE
243 from .nuvid import NuvidIE
244 from .ooyala import OoyalaIE
245 from .orf import (
246     ORFTVthekIE,
247     ORFOE1IE,
248     ORFFM4IE,
249 )
250 from .parliamentliveuk import ParliamentLiveUKIE
251 from .patreon import PatreonIE
252 from .pbs import PBSIE
253 from .photobucket import PhotobucketIE
254 from .playfm import PlayFMIE
255 from .playvid import PlayvidIE
256 from .podomatic import PodomaticIE
257 from .pornhd import PornHdIE
258 from .pornhub import PornHubIE
259 from .pornotube import PornotubeIE
260 from .prosiebensat1 import ProSiebenSat1IE
261 from .pyvideo import PyvideoIE
262 from .radiofrance import RadioFranceIE
263 from .rai import RaiIE
264 from .rbmaradio import RBMARadioIE
265 from .redtube import RedTubeIE
266 from .reverbnation import ReverbNationIE
267 from .ringtv import RingTVIE
268 from .ro220 import Ro220IE
269 from .rottentomatoes import RottenTomatoesIE
270 from .roxwel import RoxwelIE
271 from .rtbf import RTBFIE
272 from .rtlnl import RtlXlIE
273 from .rtlnow import RTLnowIE
274 from .rts import RTSIE
275 from .rtve import RTVEALaCartaIE, RTVELiveIE
276 from .ruhd import RUHDIE
277 from .rutube import (
278     RutubeIE,
279     RutubeChannelIE,
280     RutubeMovieIE,
281     RutubePersonIE,
282 )
283 from .rutv import RUTVIE
284 from .sapo import SapoIE
285 from .savefrom import SaveFromIE
286 from .sbs import SBSIE
287 from .scivee import SciVeeIE
288 from .screencast import ScreencastIE
289 from .servingsys import ServingSysIE
290 from .shared import SharedIE
291 from .sina import SinaIE
292 from .slideshare import SlideshareIE
293 from .slutload import SlutloadIE
294 from .smotri import (
295     SmotriIE,
296     SmotriCommunityIE,
297     SmotriUserIE,
298     SmotriBroadcastIE,
299 )
300 from .snotr import SnotrIE
301 from .sockshare import SockshareIE
302 from .sohu import SohuIE
303 from .soundcloud import (
304     SoundcloudIE,
305     SoundcloudSetIE,
306     SoundcloudUserIE,
307     SoundcloudPlaylistIE
308 )
309 from .soundgasm import SoundgasmIE
310 from .southpark import (
311     SouthParkIE,
312     SouthparkDeIE,
313 )
314 from .space import SpaceIE
315 from .spankwire import SpankwireIE
316 from .spiegel import SpiegelIE
317 from .spiegeltv import SpiegeltvIE
318 from .spike import SpikeIE
319 from .sportdeutschland import SportDeutschlandIE
320 from .stanfordoc import StanfordOpenClassroomIE
321 from .steam import SteamIE
322 from .streamcloud import StreamcloudIE
323 from .streamcz import StreamCZIE
324 from .swrmediathek import SWRMediathekIE
325 from .syfy import SyfyIE
326 from .sztvhu import SztvHuIE
327 from .tagesschau import TagesschauIE
328 from .teachertube import (
329     TeacherTubeIE,
330     TeacherTubeUserIE,
331 )
332 from .teachingchannel import TeachingChannelIE
333 from .teamcoco import TeamcocoIE
334 from .techtalks import TechTalksIE
335 from .ted import TEDIE
336 from .tenplay import TenPlayIE
337 from .testurl import TestURLIE
338 from .tf1 import TF1IE
339 from .theplatform import ThePlatformIE
340 from .thisav import ThisAVIE
341 from .tinypic import TinyPicIE
342 from .tlc import TlcIE, TlcDeIE
343 from .toutv import TouTvIE
344 from .toypics import ToypicsUserIE, ToypicsIE
345 from .traileraddict import TrailerAddictIE
346 from .trilulilu import TriluliluIE
347 from .trutube import TruTubeIE
348 from .tube8 import Tube8IE
349 from .tudou import TudouIE
350 from .tumblr import TumblrIE
351 from .tutv import TutvIE
352 from .tvigle import TvigleIE
353 from .tvp import TvpIE
354 from .tvplay import TVPlayIE
355 from .ubu import UbuIE
356 from .udemy import (
357     UdemyIE,
358     UdemyCourseIE
359 )
360 from .unistra import UnistraIE
361 from .urort import UrortIE
362 from .ustream import UstreamIE, UstreamChannelIE
363 from .vbox7 import Vbox7IE
364 from .veehd import VeeHDIE
365 from .veoh import VeohIE
366 from .vesti import VestiIE
367 from .vevo import VevoIE
368 from .vh1 import VH1IE
369 from .viddler import ViddlerIE
370 from .videobam import VideoBamIE
371 from .videodetective import VideoDetectiveIE
372 from .videolecturesnet import VideoLecturesNetIE
373 from .videofyme import VideofyMeIE
374 from .videopremium import VideoPremiumIE
375 from .videott import VideoTtIE
376 from .videoweed import VideoWeedIE
377 from .vidme import VidmeIE
378 from .vimeo import (
379     VimeoIE,
380     VimeoChannelIE,
381     VimeoUserIE,
382     VimeoAlbumIE,
383     VimeoGroupsIE,
384     VimeoReviewIE,
385     VimeoWatchLaterIE,
386 )
387 from .vimple import VimpleIE
388 from .vine import (
389     VineIE,
390     VineUserIE,
391 )
392 from .viki import VikiIE
393 from .vk import VKIE
394 from .vodlocker import VodlockerIE
395 from .vube import VubeIE
396 from .vuclip import VuClipIE
397 from .vulture import VultureIE
398 from .washingtonpost import WashingtonPostIE
399 from .wat import WatIE
400 from .wayofthemaster import WayOfTheMasterIE
401 from .wdr import (
402     WDRIE,
403     WDRMobileIE,
404     WDRMausIE,
405 )
406 from .weibo import WeiboIE
407 from .wimp import WimpIE
408 from .wistia import WistiaIE
409 from .worldstarhiphop import WorldStarHipHopIE
410 from .wrzuta import WrzutaIE
411 from .xbef import XBefIE
412 from .xboxclips import XboxClipsIE
413 from .xhamster import XHamsterIE
414 from .xnxx import XNXXIE
415 from .xvideos import XVideosIE
416 from .xtube import XTubeUserIE, XTubeIE
417 from .yahoo import (
418     YahooIE,
419     YahooNewsIE,
420     YahooSearchIE,
421 )
422 from .youjizz import YouJizzIE
423 from .youku import YoukuIE
424 from .youporn import YouPornIE
425 from .youtube import (
426     YoutubeIE,
427     YoutubeChannelIE,
428     YoutubeFavouritesIE,
429     YoutubeHistoryIE,
430     YoutubePlaylistIE,
431     YoutubeRecommendedIE,
432     YoutubeSearchDateIE,
433     YoutubeSearchIE,
434     YoutubeSearchURLIE,
435     YoutubeShowIE,
436     YoutubeSubscriptionsIE,
437     YoutubeTopListIE,
438     YoutubeTruncatedURLIE,
439     YoutubeUserIE,
440     YoutubeWatchLaterIE,
441 )
442
443 from .zdf import ZDFIE
444
445
446 _ALL_CLASSES = [
447     klass
448     for name, klass in globals().items()
449     if name.endswith('IE') and name != 'GenericIE'
450 ]
451 _ALL_CLASSES.append(GenericIE)
452
453
454 def gen_extractors():
455     """ Return a list of an instance of every supported extractor.
456     The order does matter; the first extractor matched is the one handling the URL.
457     """
458     return [klass() for klass in _ALL_CLASSES]
459
460
461 def get_info_extractor(ie_name):
462     """Returns the info extractor class with the given ie_name"""
463     return globals()[ie_name+'IE']