[giga] Add extractor (Closes #4090)
[ytdl] / youtube_dl / extractor / __init__.py
1 from __future__ import unicode_literals
2
3 from .abc import ABCIE
4 from .academicearth import AcademicEarthCourseIE
5 from .addanime import AddAnimeIE
6 from .adobetv import AdobeTVIE
7 from .adultswim import AdultSwimIE
8 from .aftonbladet import AftonbladetIE
9 from .aljazeera import AlJazeeraIE
10 from .alphaporno import AlphaPornoIE
11 from .anitube import AnitubeIE
12 from .anysex import AnySexIE
13 from .aol import AolIE
14 from .allocine import AllocineIE
15 from .aparat import AparatIE
16 from .appletrailers import AppleTrailersIE
17 from .archiveorg import ArchiveOrgIE
18 from .ard import ARDIE, ARDMediathekIE
19 from .arte import (
20     ArteTvIE,
21     ArteTVPlus7IE,
22     ArteTVCreativeIE,
23     ArteTVConcertIE,
24     ArteTVFutureIE,
25     ArteTVDDCIE,
26     ArteTVEmbedIE,
27 )
28 from .atresplayer import AtresPlayerIE
29 from .audiomack import AudiomackIE
30 from .auengine import AUEngineIE
31 from .azubu import AzubuIE
32 from .bambuser import BambuserIE, BambuserChannelIE
33 from .bandcamp import BandcampIE, BandcampAlbumIE
34 from .bbccouk import BBCCoUkIE
35 from .beeg import BeegIE
36 from .behindkink import BehindKinkIE
37 from .bet import BetIE
38 from .bild import BildIE
39 from .bilibili import BiliBiliIE
40 from .blinkx import BlinkxIE
41 from .bliptv import BlipTVIE, BlipTVUserIE
42 from .bloomberg import BloombergIE
43 from .bpb import BpbIE
44 from .br import BRIE
45 from .breakcom import BreakIE
46 from .brightcove import BrightcoveIE
47 from .buzzfeed import BuzzFeedIE
48 from .byutv import BYUtvIE
49 from .c56 import C56IE
50 from .canal13cl import Canal13clIE
51 from .canalplus import CanalplusIE
52 from .canalc2 import Canalc2IE
53 from .cbs import CBSIE
54 from .cbsnews import CBSNewsIE
55 from .ceskatelevize import CeskaTelevizeIE
56 from .channel9 import Channel9IE
57 from .chilloutzone import ChilloutzoneIE
58 from .cinchcast import CinchcastIE
59 from .clipfish import ClipfishIE
60 from .cliphunter import CliphunterIE
61 from .clipsyndicate import ClipsyndicateIE
62 from .cloudy import CloudyIE
63 from .clubic import ClubicIE
64 from .cmt import CMTIE
65 from .cnet import CNETIE
66 from .cnn import (
67     CNNIE,
68     CNNBlogsIE,
69     CNNArticleIE,
70 )
71 from .collegehumor import CollegeHumorIE
72 from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
73 from .comcarcoff import ComCarCoffIE
74 from .commonmistakes import CommonMistakesIE
75 from .condenast import CondeNastIE
76 from .cracked import CrackedIE
77 from .criterion import CriterionIE
78 from .crunchyroll import (
79     CrunchyrollIE,
80     CrunchyrollShowPlaylistIE
81 )
82 from .cspan import CSpanIE
83 from .dailymotion import (
84     DailymotionIE,
85     DailymotionPlaylistIE,
86     DailymotionUserIE,
87 )
88 from .daum import DaumIE
89 from .dbtv import DBTVIE
90 from .deezer import DeezerPlaylistIE
91 from .dfb import DFBIE
92 from .dotsub import DotsubIE
93 from .dreisat import DreiSatIE
94 from .drtuber import DrTuberIE
95 from .drtv import DRTVIE
96 from .dvtv import DVTVIE
97 from .dump import DumpIE
98 from .defense import DefenseGouvFrIE
99 from .discovery import DiscoveryIE
100 from .divxstage import DivxStageIE
101 from .dropbox import DropboxIE
102 from .ebaumsworld import EbaumsWorldIE
103 from .echomsk import EchoMskIE
104 from .ehow import EHowIE
105 from .eighttracks import EightTracksIE
106 from .einthusan import EinthusanIE
107 from .eitb import EitbIE
108 from .ellentv import (
109     EllenTVIE,
110     EllenTVClipsIE,
111 )
112 from .elpais import ElPaisIE
113 from .empflix import EMPFlixIE
114 from .engadget import EngadgetIE
115 from .eporner import EpornerIE
116 from .eroprofile import EroProfileIE
117 from .escapist import EscapistIE
118 from .everyonesmixtape import EveryonesMixtapeIE
119 from .exfm import ExfmIE
120 from .expotv import ExpoTVIE
121 from .extremetube import ExtremeTubeIE
122 from .facebook import FacebookIE
123 from .faz import FazIE
124 from .fc2 import FC2IE
125 from .firedrive import FiredriveIE
126 from .firstpost import FirstpostIE
127 from .firsttv import FirstTVIE
128 from .fivemin import FiveMinIE
129 from .fktv import (
130     FKTVIE,
131     FKTVPosteckeIE,
132 )
133 from .flickr import FlickrIE
134 from .folketinget import FolketingetIE
135 from .fourtube import FourTubeIE
136 from .foxgay import FoxgayIE
137 from .foxnews import FoxNewsIE
138 from .franceculture import FranceCultureIE
139 from .franceinter import FranceInterIE
140 from .francetv import (
141     PluzzIE,
142     FranceTvInfoIE,
143     FranceTVIE,
144     GenerationQuoiIE,
145     CultureboxIE,
146 )
147 from .freesound import FreesoundIE
148 from .freespeech import FreespeechIE
149 from .freevideo import FreeVideoIE
150 from .funnyordie import FunnyOrDieIE
151 from .gamekings import GamekingsIE
152 from .gameone import (
153     GameOneIE,
154     GameOnePlaylistIE,
155 )
156 from .gamespot import GameSpotIE
157 from .gamestar import GameStarIE
158 from .gametrailers import GametrailersIE
159 from .gdcvault import GDCVaultIE
160 from .generic import GenericIE
161 from .giantbomb import GiantBombIE
162 from .giga import GigaIE
163 from .glide import GlideIE
164 from .globo import GloboIE
165 from .godtube import GodTubeIE
166 from .goldenmoustache import GoldenMoustacheIE
167 from .golem import GolemIE
168 from .googleplus import GooglePlusIE
169 from .googlesearch import GoogleSearchIE
170 from .gorillavid import GorillaVidIE
171 from .goshgay import GoshgayIE
172 from .grooveshark import GroovesharkIE
173 from .groupon import GrouponIE
174 from .hark import HarkIE
175 from .heise import HeiseIE
176 from .hellporno import HellPornoIE
177 from .helsinki import HelsinkiIE
178 from .hentaistigma import HentaiStigmaIE
179 from .hitbox import HitboxIE, HitboxLiveIE
180 from .hornbunny import HornBunnyIE
181 from .hostingbulk import HostingBulkIE
182 from .hotnewhiphop import HotNewHipHopIE
183 from .howcast import HowcastIE
184 from .howstuffworks import HowStuffWorksIE
185 from .huffpost import HuffPostIE
186 from .hypem import HypemIE
187 from .iconosquare import IconosquareIE
188 from .ign import IGNIE, OneUPIE
189 from .imdb import (
190     ImdbIE,
191     ImdbListIE
192 )
193 from .ina import InaIE
194 from .infoq import InfoQIE
195 from .instagram import InstagramIE, InstagramUserIE
196 from .internetvideoarchive import InternetVideoArchiveIE
197 from .iprima import IPrimaIE
198 from .ivi import (
199     IviIE,
200     IviCompilationIE
201 )
202 from .izlesene import IzleseneIE
203 from .jadorecettepub import JadoreCettePubIE
204 from .jeuxvideo import JeuxVideoIE
205 from .jove import JoveIE
206 from .jukebox import JukeboxIE
207 from .jpopsukitv import JpopsukiIE
208 from .kankan import KankanIE
209 from .keezmovies import KeezMoviesIE
210 from .khanacademy import KhanAcademyIE
211 from .kickstarter import KickStarterIE
212 from .keek import KeekIE
213 from .kontrtube import KontrTubeIE
214 from .krasview import KrasViewIE
215 from .ku6 import Ku6IE
216 from .la7 import LA7IE
217 from .laola1tv import Laola1TvIE
218 from .lifenews import LifeNewsIE
219 from .liveleak import LiveLeakIE
220 from .livestream import (
221     LivestreamIE,
222     LivestreamOriginalIE,
223     LivestreamShortenerIE,
224 )
225 from .lrt import LRTIE
226 from .lynda import (
227     LyndaIE,
228     LyndaCourseIE
229 )
230 from .m6 import M6IE
231 from .macgamestore import MacGameStoreIE
232 from .mailru import MailRuIE
233 from .malemotion import MalemotionIE
234 from .mdr import MDRIE
235 from .metacafe import MetacafeIE
236 from .metacritic import MetacriticIE
237 from .mgoon import MgoonIE
238 from .minhateca import MinhatecaIE
239 from .ministrygrid import MinistryGridIE
240 from .mit import TechTVMITIE, MITIE, OCWMITIE
241 from .mitele import MiTeleIE
242 from .mixcloud import MixcloudIE
243 from .mlb import MLBIE
244 from .mpora import MporaIE
245 from .moevideo import MoeVideoIE
246 from .mofosex import MofosexIE
247 from .mojvideo import MojvideoIE
248 from .moniker import MonikerIE
249 from .mooshare import MooshareIE
250 from .morningstar import MorningstarIE
251 from .motherless import MotherlessIE
252 from .motorsport import MotorsportIE
253 from .movieclips import MovieClipsIE
254 from .moviezine import MoviezineIE
255 from .movshare import MovShareIE
256 from .mtv import (
257     MTVIE,
258     MTVServicesEmbeddedIE,
259     MTVIggyIE,
260 )
261 from .muenchentv import MuenchenTVIE
262 from .musicplayon import MusicPlayOnIE
263 from .musicvault import MusicVaultIE
264 from .muzu import MuzuTVIE
265 from .myspace import MySpaceIE, MySpaceAlbumIE
266 from .myspass import MySpassIE
267 from .myvideo import MyVideoIE
268 from .myvidster import MyVidsterIE
269 from .naver import NaverIE
270 from .nba import NBAIE
271 from .nbc import (
272     NBCIE,
273     NBCNewsIE,
274 )
275 from .ndr import NDRIE
276 from .ndtv import NDTVIE
277 from .nerdcubed import NerdCubedFeedIE
278 from .newgrounds import NewgroundsIE
279 from .newstube import NewstubeIE
280 from .nfb import NFBIE
281 from .nfl import NFLIE
282 from .nhl import NHLIE, NHLVideocenterIE
283 from .niconico import NiconicoIE, NiconicoPlaylistIE
284 from .ninegag import NineGagIE
285 from .noco import NocoIE
286 from .normalboots import NormalbootsIE
287 from .nosvideo import NosVideoIE
288 from .novamov import NovaMovIE
289 from .nowness import NownessIE
290 from .nowvideo import NowVideoIE
291 from .npo import (
292     NPOIE,
293     TegenlichtVproIE,
294 )
295 from .nrk import (
296     NRKIE,
297     NRKTVIE,
298 )
299 from .ntv import NTVIE
300 from .nytimes import NYTimesIE
301 from .nuvid import NuvidIE
302 from .oktoberfesttv import OktoberfestTVIE
303 from .ooyala import OoyalaIE
304 from .openfilm import OpenFilmIE
305 from .orf import (
306     ORFTVthekIE,
307     ORFOE1IE,
308     ORFFM4IE,
309 )
310 from .parliamentliveuk import ParliamentLiveUKIE
311 from .patreon import PatreonIE
312 from .pbs import PBSIE
313 from .phoenix import PhoenixIE
314 from .photobucket import PhotobucketIE
315 from .planetaplay import PlanetaPlayIE
316 from .played import PlayedIE
317 from .playfm import PlayFMIE
318 from .playvid import PlayvidIE
319 from .podomatic import PodomaticIE
320 from .pornhd import PornHdIE
321 from .pornhub import PornHubIE
322 from .pornotube import PornotubeIE
323 from .pornoxo import PornoXOIE
324 from .promptfile import PromptFileIE
325 from .prosiebensat1 import ProSiebenSat1IE
326 from .pyvideo import PyvideoIE
327 from .quickvid import QuickVidIE
328 from .radiode import RadioDeIE
329 from .radiobremen import RadioBremenIE
330 from .radiofrance import RadioFranceIE
331 from .rai import RaiIE
332 from .rbmaradio import RBMARadioIE
333 from .redtube import RedTubeIE
334 from .restudy import RestudyIE
335 from .reverbnation import ReverbNationIE
336 from .ringtv import RingTVIE
337 from .ro220 import Ro220IE
338 from .rottentomatoes import RottenTomatoesIE
339 from .roxwel import RoxwelIE
340 from .rtbf import RTBFIE
341 from .rtlnl import RtlXlIE
342 from .rtlnow import RTLnowIE
343 from .rtp import RTPIE
344 from .rts import RTSIE
345 from .rtve import RTVEALaCartaIE, RTVELiveIE
346 from .ruhd import RUHDIE
347 from .rutube import (
348     RutubeIE,
349     RutubeChannelIE,
350     RutubeEmbedIE,
351     RutubeMovieIE,
352     RutubePersonIE,
353 )
354 from .rutv import RUTVIE
355 from .sapo import SapoIE
356 from .savefrom import SaveFromIE
357 from .sbs import SBSIE
358 from .scivee import SciVeeIE
359 from .screencast import ScreencastIE
360 from .screencastomatic import ScreencastOMaticIE
361 from .screenwavemedia import CinemassacreIE, ScreenwaveMediaIE, TeamFourIE
362 from .servingsys import ServingSysIE
363 from .sexu import SexuIE
364 from .sexykarma import SexyKarmaIE
365 from .shared import SharedIE
366 from .sharesix import ShareSixIE
367 from .sina import SinaIE
368 from .slideshare import SlideshareIE
369 from .slutload import SlutloadIE
370 from .smotri import (
371     SmotriIE,
372     SmotriCommunityIE,
373     SmotriUserIE,
374     SmotriBroadcastIE,
375 )
376 from .snotr import SnotrIE
377 from .sockshare import SockshareIE
378 from .sohu import SohuIE
379 from .soundcloud import (
380     SoundcloudIE,
381     SoundcloudSetIE,
382     SoundcloudUserIE,
383     SoundcloudPlaylistIE
384 )
385 from .soundgasm import SoundgasmIE
386 from .southpark import (
387     SouthParkIE,
388     SouthparkDeIE,
389 )
390 from .space import SpaceIE
391 from .spankwire import SpankwireIE
392 from .spiegel import SpiegelIE, SpiegelArticleIE
393 from .spiegeltv import SpiegeltvIE
394 from .spike import SpikeIE
395 from .sport5 import Sport5IE
396 from .sportbox import SportBoxIE
397 from .sportdeutschland import SportDeutschlandIE
398 from .srmediathek import SRMediathekIE
399 from .stanfordoc import StanfordOpenClassroomIE
400 from .steam import SteamIE
401 from .streamcloud import StreamcloudIE
402 from .streamcz import StreamCZIE
403 from .sunporno import SunPornoIE
404 from .swrmediathek import SWRMediathekIE
405 from .syfy import SyfyIE
406 from .sztvhu import SztvHuIE
407 from .tagesschau import TagesschauIE
408 from .tapely import TapelyIE
409 from .tass import TassIE
410 from .teachertube import (
411     TeacherTubeIE,
412     TeacherTubeUserIE,
413 )
414 from .teachingchannel import TeachingChannelIE
415 from .teamcoco import TeamcocoIE
416 from .techtalks import TechTalksIE
417 from .ted import TEDIE
418 from .telebruxelles import TeleBruxellesIE
419 from .telecinco import TelecincoIE
420 from .telemb import TeleMBIE
421 from .teletask import TeleTaskIE
422 from .tenplay import TenPlayIE
423 from .testurl import TestURLIE
424 from .tf1 import TF1IE
425 from .theonion import TheOnionIE
426 from .theplatform import ThePlatformIE
427 from .thesixtyone import TheSixtyOneIE
428 from .thisav import ThisAVIE
429 from .tinypic import TinyPicIE
430 from .tlc import TlcIE, TlcDeIE
431 from .tmz import TMZIE
432 from .tnaflix import TNAFlixIE
433 from .thvideo import (
434     THVideoIE,
435     THVideoPlaylistIE
436 )
437 from .toutv import TouTvIE
438 from .toypics import ToypicsUserIE, ToypicsIE
439 from .traileraddict import TrailerAddictIE
440 from .trilulilu import TriluliluIE
441 from .trutube import TruTubeIE
442 from .tube8 import Tube8IE
443 from .tudou import TudouIE
444 from .tumblr import TumblrIE
445 from .tunein import TuneInIE
446 from .turbo import TurboIE
447 from .tutv import TutvIE
448 from .tvigle import TvigleIE
449 from .tvp import TvpIE
450 from .tvplay import TVPlayIE
451 from .twentyfourvideo import TwentyFourVideoIE
452 from .twitch import TwitchIE
453 from .ubu import UbuIE
454 from .udemy import (
455     UdemyIE,
456     UdemyCourseIE
457 )
458 from .unistra import UnistraIE
459 from .urort import UrortIE
460 from .ustream import UstreamIE, UstreamChannelIE
461 from .vbox7 import Vbox7IE
462 from .veehd import VeeHDIE
463 from .veoh import VeohIE
464 from .vesti import VestiIE
465 from .vevo import VevoIE
466 from .vgtv import VGTVIE
467 from .vh1 import VH1IE
468 from .vice import ViceIE
469 from .viddler import ViddlerIE
470 from .videobam import VideoBamIE
471 from .videodetective import VideoDetectiveIE
472 from .videolecturesnet import VideoLecturesNetIE
473 from .videofyme import VideofyMeIE
474 from .videomega import VideoMegaIE
475 from .videopremium import VideoPremiumIE
476 from .videott import VideoTtIE
477 from .videoweed import VideoWeedIE
478 from .vidme import VidmeIE
479 from .vidzi import VidziIE
480 from .vier import VierIE, VierVideosIE
481 from .vimeo import (
482     VimeoIE,
483     VimeoAlbumIE,
484     VimeoChannelIE,
485     VimeoGroupsIE,
486     VimeoLikesIE,
487     VimeoReviewIE,
488     VimeoUserIE,
489     VimeoWatchLaterIE,
490 )
491 from .vimple import VimpleIE
492 from .vine import (
493     VineIE,
494     VineUserIE,
495 )
496 from .viki import VikiIE
497 from .vk import (
498     VKIE,
499     VKUserVideosIE,
500 )
501 from .vodlocker import VodlockerIE
502 from .vporn import VpornIE
503 from .vrt import VRTIE
504 from .vube import VubeIE
505 from .vuclip import VuClipIE
506 from .vulture import VultureIE
507 from .walla import WallaIE
508 from .washingtonpost import WashingtonPostIE
509 from .wat import WatIE
510 from .wayofthemaster import WayOfTheMasterIE
511 from .wdr import (
512     WDRIE,
513     WDRMobileIE,
514     WDRMausIE,
515 )
516 from .webofstories import WebOfStoriesIE
517 from .weibo import WeiboIE
518 from .wimp import WimpIE
519 from .wistia import WistiaIE
520 from .worldstarhiphop import WorldStarHipHopIE
521 from .wrzuta import WrzutaIE
522 from .xbef import XBefIE
523 from .xboxclips import XboxClipsIE
524 from .xhamster import XHamsterIE
525 from .xminus import XMinusIE
526 from .xnxx import XNXXIE
527 from .xvideos import XVideosIE
528 from .xtube import XTubeUserIE, XTubeIE
529 from .xxxymovies import XXXYMoviesIE
530 from .yahoo import (
531     YahooIE,
532     YahooSearchIE,
533 )
534 from .yesjapan import YesJapanIE
535 from .ynet import YnetIE
536 from .youjizz import YouJizzIE
537 from .youku import YoukuIE
538 from .youporn import YouPornIE
539 from .yourupload import YourUploadIE
540 from .youtube import (
541     YoutubeIE,
542     YoutubeChannelIE,
543     YoutubeFavouritesIE,
544     YoutubeHistoryIE,
545     YoutubePlaylistIE,
546     YoutubeRecommendedIE,
547     YoutubeSearchDateIE,
548     YoutubeSearchIE,
549     YoutubeSearchURLIE,
550     YoutubeShowIE,
551     YoutubeSubscriptionsIE,
552     YoutubeTruncatedIDIE,
553     YoutubeTruncatedURLIE,
554     YoutubeUserIE,
555     YoutubeWatchLaterIE,
556 )
557 from .zdf import ZDFIE, ZDFChannelIE
558 from .zingmp3 import (
559     ZingMp3SongIE,
560     ZingMp3AlbumIE,
561 )
562
563 _ALL_CLASSES = [
564     klass
565     for name, klass in globals().items()
566     if name.endswith('IE') and name != 'GenericIE'
567 ]
568 _ALL_CLASSES.append(GenericIE)
569
570
571 def gen_extractors():
572     """ Return a list of an instance of every supported extractor.
573     The order does matter; the first extractor matched is the one handling the URL.
574     """
575     return [klass() for klass in _ALL_CLASSES]
576
577
578 def get_info_extractor(ie_name):
579     """Returns the info extractor class with the given ie_name"""
580     return globals()[ie_name + 'IE']