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