[livestream:original] Add support for folder urls (closes #2631)
[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 .gorillavid import GorillaVidIE
113 from .hark import HarkIE
114 from .helsinki import HelsinkiIE
115 from .hentaistigma import HentaiStigmaIE
116 from .hotnewhiphop import HotNewHipHopIE
117 from .howcast import HowcastIE
118 from .huffpost import HuffPostIE
119 from .hypem import HypemIE
120 from .iconosquare import IconosquareIE
121 from .ign import IGNIE, OneUPIE
122 from .imdb import (
123     ImdbIE,
124     ImdbListIE
125 )
126 from .ina import InaIE
127 from .infoq import InfoQIE
128 from .instagram import InstagramIE, InstagramUserIE
129 from .internetvideoarchive import InternetVideoArchiveIE
130 from .iprima import IPrimaIE
131 from .ivi import (
132     IviIE,
133     IviCompilationIE
134 )
135 from .jadorecettepub import JadoreCettePubIE
136 from .jeuxvideo import JeuxVideoIE
137 from .jukebox import JukeboxIE
138 from .justintv import JustinTVIE
139 from .jpopsukitv import JpopsukiIE
140 from .kankan import KankanIE
141 from .keezmovies import KeezMoviesIE
142 from .khanacademy import KhanAcademyIE
143 from .kickstarter import KickStarterIE
144 from .keek import KeekIE
145 from .kontrtube import KontrTubeIE
146 from .ku6 import Ku6IE
147 from .la7 import LA7IE
148 from .lifenews import LifeNewsIE
149 from .liveleak import LiveLeakIE
150 from .livestream import (
151     LivestreamIE,
152     LivestreamOriginalIE,
153     LivestreamShortenerIE,
154 )
155 from .lynda import (
156     LyndaIE,
157     LyndaCourseIE
158 )
159 from .m6 import M6IE
160 from .macgamestore import MacGameStoreIE
161 from .mailru import MailRuIE
162 from .malemotion import MalemotionIE
163 from .mdr import MDRIE
164 from .metacafe import MetacafeIE
165 from .metacritic import MetacriticIE
166 from .mit import TechTVMITIE, MITIE, OCWMITIE
167 from .mixcloud import MixcloudIE
168 from .mpora import MporaIE
169 from .mofosex import MofosexIE
170 from .mooshare import MooshareIE
171 from .morningstar import MorningstarIE
172 from .motorsport import MotorsportIE
173 from .moviezine import MoviezineIE
174 from .movshare import MovShareIE
175 from .mtv import (
176     MTVIE,
177     MTVServicesEmbeddedIE,
178     MTVIggyIE,
179 )
180 from .musicplayon import MusicPlayOnIE
181 from .muzu import MuzuTVIE
182 from .myspace import MySpaceIE
183 from .myspass import MySpassIE
184 from .myvideo import MyVideoIE
185 from .naver import NaverIE
186 from .nba import NBAIE
187 from .nbc import (
188     NBCIE,
189     NBCNewsIE,
190 )
191 from .ndr import NDRIE
192 from .ndtv import NDTVIE
193 from .newgrounds import NewgroundsIE
194 from .newstube import NewstubeIE
195 from .nfb import NFBIE
196 from .nhl import NHLIE, NHLVideocenterIE
197 from .niconico import NiconicoIE
198 from .ninegag import NineGagIE
199 from .noco import NocoIE
200 from .normalboots import NormalbootsIE
201 from .novamov import NovaMovIE
202 from .nowness import NownessIE
203 from .nowvideo import NowVideoIE
204 from .nrk import (
205     NRKIE,
206     NRKTVIE,
207 )
208 from .ntv import NTVIE
209 from .nytimes import NYTimesIE
210 from .nuvid import NuvidIE
211 from .oe1 import OE1IE
212 from .ooyala import OoyalaIE
213 from .orf import ORFIE
214 from .parliamentliveuk import ParliamentLiveUKIE
215 from .pbs import PBSIE
216 from .photobucket import PhotobucketIE
217 from .playvid import PlayvidIE
218 from .podomatic import PodomaticIE
219 from .pornhd import PornHdIE
220 from .pornhub import PornHubIE
221 from .pornotube import PornotubeIE
222 from .prosiebensat1 import ProSiebenSat1IE
223 from .pyvideo import PyvideoIE
224 from .radiofrance import RadioFranceIE
225 from .rai import RaiIE
226 from .rbmaradio import RBMARadioIE
227 from .redtube import RedTubeIE
228 from .ringtv import RingTVIE
229 from .ro220 import Ro220IE
230 from .rottentomatoes import RottenTomatoesIE
231 from .roxwel import RoxwelIE
232 from .rtbf import RTBFIE
233 from .rtlnow import RTLnowIE
234 from .rts import RTSIE
235 from .rtve import RTVEALaCartaIE
236 from .rutube import (
237     RutubeIE,
238     RutubeChannelIE,
239     RutubeMovieIE,
240     RutubePersonIE,
241 )
242 from .rutv import RUTVIE
243 from .savefrom import SaveFromIE
244 from .scivee import SciVeeIE
245 from .servingsys import ServingSysIE
246 from .sina import SinaIE
247 from .slideshare import SlideshareIE
248 from .slutload import SlutloadIE
249 from .smotri import (
250     SmotriIE,
251     SmotriCommunityIE,
252     SmotriUserIE,
253     SmotriBroadcastIE,
254 )
255 from .sohu import SohuIE
256 from .soundcloud import (
257     SoundcloudIE,
258     SoundcloudSetIE,
259     SoundcloudUserIE,
260     SoundcloudPlaylistIE
261 )
262 from .soundgasm import SoundgasmIE
263 from .southparkstudios import (
264     SouthParkStudiosIE,
265     SouthparkDeIE,
266 )
267 from .space import SpaceIE
268 from .spankwire import SpankwireIE
269 from .spiegel import SpiegelIE
270 from .spiegeltv import SpiegeltvIE
271 from .spike import SpikeIE
272 from .stanfordoc import StanfordOpenClassroomIE
273 from .steam import SteamIE
274 from .streamcloud import StreamcloudIE
275 from .streamcz import StreamCZIE
276 from .swrmediathek import SWRMediathekIE
277 from .syfy import SyfyIE
278 from .sztvhu import SztvHuIE
279 from .tagesschau import TagesschauIE
280 from .teachertube import (
281     TeacherTubeIE,
282     TeacherTubeClassroomIE,
283 )
284 from .teachingchannel import TeachingChannelIE
285 from .teamcoco import TeamcocoIE
286 from .techtalks import TechTalksIE
287 from .ted import TEDIE
288 from .testurl import TestURLIE
289 from .tf1 import TF1IE
290 from .theplatform import ThePlatformIE
291 from .thisav import ThisAVIE
292 from .tinypic import TinyPicIE
293 from .tlc import TlcIE, TlcDeIE
294 from .toutv import TouTvIE
295 from .toypics import ToypicsUserIE, ToypicsIE
296 from .traileraddict import TrailerAddictIE
297 from .trilulilu import TriluliluIE
298 from .trutube import TruTubeIE
299 from .tube8 import Tube8IE
300 from .tudou import TudouIE
301 from .tumblr import TumblrIE
302 from .tutv import TutvIE
303 from .tvigle import TvigleIE
304 from .tvp import TvpIE
305 from .udemy import (
306     UdemyIE,
307     UdemyCourseIE
308 )
309 from .unistra import UnistraIE
310 from .urort import UrortIE
311 from .ustream import UstreamIE, UstreamChannelIE
312 from .vbox7 import Vbox7IE
313 from .veehd import VeeHDIE
314 from .veoh import VeohIE
315 from .vesti import VestiIE
316 from .vevo import VevoIE
317 from .vh1 import VH1IE
318 from .viddler import ViddlerIE
319 from .videobam import VideoBamIE
320 from .videodetective import VideoDetectiveIE
321 from .videolecturesnet import VideoLecturesNetIE
322 from .videofyme import VideofyMeIE
323 from .videopremium import VideoPremiumIE
324 from .videott import VideoTtIE
325 from .videoweed import VideoWeedIE
326 from .vimeo import (
327     VimeoIE,
328     VimeoChannelIE,
329     VimeoUserIE,
330     VimeoAlbumIE,
331     VimeoGroupsIE,
332     VimeoReviewIE,
333     VimeoWatchLaterIE,
334 )
335 from .vine import (
336     VineIE,
337     VineUserIE,
338 )
339 from .viki import VikiIE
340 from .vk import VKIE
341 from .vube import VubeIE
342 from .vuclip import VuClipIE
343 from .vulture import VultureIE
344 from .washingtonpost import WashingtonPostIE
345 from .wat import WatIE
346 from .wdr import (
347     WDRIE,
348     WDRMobileIE,
349     WDRMausIE,
350 )
351 from .weibo import WeiboIE
352 from .wimp import WimpIE
353 from .wistia import WistiaIE
354 from .worldstarhiphop import WorldStarHipHopIE
355 from .wrzuta import WrzutaIE
356 from .xbef import XBefIE
357 from .xhamster import XHamsterIE
358 from .xnxx import XNXXIE
359 from .xvideos import XVideosIE
360 from .xtube import XTubeUserIE, XTubeIE
361 from .yahoo import (
362     YahooIE,
363     YahooNewsIE,
364     YahooSearchIE,
365 )
366 from .youjizz import YouJizzIE
367 from .youku import YoukuIE
368 from .youporn import YouPornIE
369 from .youtube import (
370     YoutubeIE,
371     YoutubeChannelIE,
372     YoutubeFavouritesIE,
373     YoutubeHistoryIE,
374     YoutubePlaylistIE,
375     YoutubeRecommendedIE,
376     YoutubeSearchDateIE,
377     YoutubeSearchIE,
378     YoutubeSearchURLIE,
379     YoutubeShowIE,
380     YoutubeSubscriptionsIE,
381     YoutubeTopListIE,
382     YoutubeTruncatedURLIE,
383     YoutubeUserIE,
384     YoutubeWatchLaterIE,
385 )
386 from .zdf import ZDFIE
387
388
389 _ALL_CLASSES = [
390     klass
391     for name, klass in globals().items()
392     if name.endswith('IE') and name != 'GenericIE'
393 ]
394 _ALL_CLASSES.append(GenericIE)
395
396
397 def gen_extractors():
398     """ Return a list of an instance of every supported extractor.
399     The order does matter; the first extractor matched is the one handling the URL.
400     """
401     return [klass() for klass in _ALL_CLASSES]
402
403
404 def get_info_extractor(ie_name):
405     """Returns the info extractor class with the given ie_name"""
406     return globals()[ie_name+'IE']