1 from __future__ import unicode_literals
4 from .abc7news import Abc7NewsIE
5 from .academicearth import AcademicEarthCourseIE
6 from .addanime import AddAnimeIE
7 from .adobetv import AdobeTVIE
8 from .adultswim import AdultSwimIE
9 from .aftenposten import AftenpostenIE
10 from .aftonbladet import AftonbladetIE
11 from .aljazeera import AlJazeeraIE
12 from .alphaporno import AlphaPornoIE
13 from .anitube import AnitubeIE
14 from .anysex import AnySexIE
15 from .aol import AolIE
16 from .allocine import AllocineIE
17 from .aparat import AparatIE
18 from .appletrailers import AppleTrailersIE
19 from .archiveorg import ArchiveOrgIE
20 from .ard import ARDIE, ARDMediathekIE
30 from .atresplayer import AtresPlayerIE
31 from .atttechchannel import ATTTechChannelIE
32 from .audiomack import AudiomackIE, AudiomackAlbumIE
33 from .azubu import AzubuIE
34 from .bambuser import BambuserIE, BambuserChannelIE
35 from .bandcamp import BandcampIE, BandcampAlbumIE
36 from .bbccouk import BBCCoUkIE
37 from .beeg import BeegIE
38 from .behindkink import BehindKinkIE
39 from .bet import BetIE
40 from .bild import BildIE
41 from .bilibili import BiliBiliIE
42 from .blinkx import BlinkxIE
43 from .bliptv import BlipTVIE, BlipTVUserIE
44 from .bloomberg import BloombergIE
45 from .bpb import BpbIE
47 from .breakcom import BreakIE
48 from .brightcove import BrightcoveIE
49 from .buzzfeed import BuzzFeedIE
50 from .byutv import BYUtvIE
51 from .c56 import C56IE
52 from .camdemy import (
56 from .canal13cl import Canal13clIE
57 from .canalplus import CanalplusIE
58 from .canalc2 import Canalc2IE
59 from .cbs import CBSIE
60 from .cbsnews import CBSNewsIE
61 from .ccc import CCCIE
62 from .ceskatelevize import CeskaTelevizeIE
63 from .channel9 import Channel9IE
64 from .chilloutzone import ChilloutzoneIE
65 from .cinchcast import CinchcastIE
66 from .clipfish import ClipfishIE
67 from .cliphunter import CliphunterIE
68 from .clipsyndicate import ClipsyndicateIE
69 from .cloudy import CloudyIE
70 from .clubic import ClubicIE
71 from .cmt import CMTIE
72 from .cnet import CNETIE
78 from .collegehumor import CollegeHumorIE
79 from .collegerama import CollegeRamaIE
80 from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
81 from .comcarcoff import ComCarCoffIE
82 from .commonmistakes import CommonMistakesIE, UnicodeBOMIE
83 from .condenast import CondeNastIE
84 from .cracked import CrackedIE
85 from .criterion import CriterionIE
86 from .crunchyroll import (
88 CrunchyrollShowPlaylistIE
90 from .cspan import CSpanIE
91 from .ctsnews import CtsNewsIE
92 from .dailymotion import (
94 DailymotionPlaylistIE,
97 from .daum import DaumIE
98 from .dbtv import DBTVIE
99 from .dctp import DctpTvIE
100 from .deezer import DeezerPlaylistIE
101 from .dfb import DFBIE
102 from .dotsub import DotsubIE
103 from .dreisat import DreiSatIE
104 from .drbonanza import DRBonanzaIE
105 from .drtuber import DrTuberIE
106 from .drtv import DRTVIE
107 from .dvtv import DVTVIE
108 from .dump import DumpIE
109 from .defense import DefenseGouvFrIE
110 from .discovery import DiscoveryIE
111 from .divxstage import DivxStageIE
112 from .dropbox import DropboxIE
113 from .ebaumsworld import EbaumsWorldIE
114 from .echomsk import EchoMskIE
115 from .ehow import EHowIE
116 from .eighttracks import EightTracksIE
117 from .einthusan import EinthusanIE
118 from .eitb import EitbIE
119 from .ellentv import (
123 from .elpais import ElPaisIE
124 from .empflix import EMPFlixIE
125 from .engadget import EngadgetIE
126 from .eporner import EpornerIE
127 from .eroprofile import EroProfileIE
128 from .escapist import EscapistIE
129 from .everyonesmixtape import EveryonesMixtapeIE
130 from .exfm import ExfmIE
131 from .expotv import ExpoTVIE
132 from .extremetube import ExtremeTubeIE
133 from .facebook import FacebookIE
134 from .faz import FazIE
135 from .fc2 import FC2IE
136 from .firedrive import FiredriveIE
137 from .firstpost import FirstpostIE
138 from .firsttv import FirstTVIE
139 from .fivemin import FiveMinIE
144 from .flickr import FlickrIE
145 from .folketinget import FolketingetIE
146 from .fourtube import FourTubeIE
147 from .foxgay import FoxgayIE
148 from .foxnews import FoxNewsIE
149 from .franceculture import FranceCultureIE
150 from .franceinter import FranceInterIE
151 from .francetv import (
158 from .freesound import FreesoundIE
159 from .freespeech import FreespeechIE
160 from .freevideo import FreeVideoIE
161 from .funnyordie import FunnyOrDieIE
162 from .gamekings import GamekingsIE
163 from .gameone import (
167 from .gamespot import GameSpotIE
168 from .gamestar import GameStarIE
169 from .gametrailers import GametrailersIE
170 from .gdcvault import GDCVaultIE
171 from .generic import GenericIE
172 from .giantbomb import GiantBombIE
173 from .giga import GigaIE
174 from .glide import GlideIE
175 from .globo import GloboIE
176 from .godtube import GodTubeIE
177 from .goldenmoustache import GoldenMoustacheIE
178 from .golem import GolemIE
179 from .googleplus import GooglePlusIE
180 from .googlesearch import GoogleSearchIE
181 from .gorillavid import GorillaVidIE
182 from .goshgay import GoshgayIE
183 from .grooveshark import GroovesharkIE
184 from .groupon import GrouponIE
185 from .hark import HarkIE
186 from .hearthisat import HearThisAtIE
187 from .heise import HeiseIE
188 from .hellporno import HellPornoIE
189 from .helsinki import HelsinkiIE
190 from .hentaistigma import HentaiStigmaIE
191 from .historicfilms import HistoricFilmsIE
192 from .history import HistoryIE
193 from .hitbox import HitboxIE, HitboxLiveIE
194 from .hornbunny import HornBunnyIE
195 from .hostingbulk import HostingBulkIE
196 from .hotnewhiphop import HotNewHipHopIE
197 from .howcast import HowcastIE
198 from .howstuffworks import HowStuffWorksIE
199 from .huffpost import HuffPostIE
200 from .hypem import HypemIE
201 from .iconosquare import IconosquareIE
202 from .ign import IGNIE, OneUPIE
207 from .ina import InaIE
208 from .infoq import InfoQIE
209 from .instagram import InstagramIE, InstagramUserIE
210 from .internetvideoarchive import InternetVideoArchiveIE
211 from .iprima import IPrimaIE
216 from .izlesene import IzleseneIE
217 from .jadorecettepub import JadoreCettePubIE
218 from .jeuxvideo import JeuxVideoIE
219 from .jove import JoveIE
220 from .jukebox import JukeboxIE
221 from .jpopsukitv import JpopsukiIE
222 from .kankan import KankanIE
223 from .karaoketv import KaraoketvIE
224 from .keezmovies import KeezMoviesIE
225 from .khanacademy import KhanAcademyIE
226 from .kickstarter import KickStarterIE
227 from .keek import KeekIE
228 from .kontrtube import KontrTubeIE
229 from .krasview import KrasViewIE
230 from .ku6 import Ku6IE
231 from .la7 import LA7IE
232 from .laola1tv import Laola1TvIE
233 from .lifenews import LifeNewsIE
234 from .liveleak import LiveLeakIE
235 from .livestream import (
237 LivestreamOriginalIE,
238 LivestreamShortenerIE,
240 from .lnkgo import LnkGoIE
241 from .lrt import LRTIE
247 from .macgamestore import MacGameStoreIE
248 from .mailru import MailRuIE
249 from .malemotion import MalemotionIE
250 from .mdr import MDRIE
251 from .metacafe import MetacafeIE
252 from .metacritic import MetacriticIE
253 from .mgoon import MgoonIE
254 from .minhateca import MinhatecaIE
255 from .ministrygrid import MinistryGridIE
256 from .mit import TechTVMITIE, MITIE, OCWMITIE
257 from .mitele import MiTeleIE
258 from .mixcloud import MixcloudIE
259 from .mlb import MLBIE
260 from .mpora import MporaIE
261 from .moevideo import MoeVideoIE
262 from .mofosex import MofosexIE
263 from .mojvideo import MojvideoIE
264 from .moniker import MonikerIE
265 from .mooshare import MooshareIE
266 from .morningstar import MorningstarIE
267 from .motherless import MotherlessIE
268 from .motorsport import MotorsportIE
269 from .movieclips import MovieClipsIE
270 from .moviezine import MoviezineIE
271 from .movshare import MovShareIE
274 MTVServicesEmbeddedIE,
277 from .muenchentv import MuenchenTVIE
278 from .musicplayon import MusicPlayOnIE
279 from .musicvault import MusicVaultIE
280 from .muzu import MuzuTVIE
281 from .myspace import MySpaceIE, MySpaceAlbumIE
282 from .myspass import MySpassIE
283 from .myvideo import MyVideoIE
284 from .myvidster import MyVidsterIE
285 from .naver import NaverIE
286 from .nba import NBAIE
291 from .ndr import NDRIE
292 from .ndtv import NDTVIE
293 from .netzkino import NetzkinoIE
294 from .nerdcubed import NerdCubedFeedIE
295 from .nerdist import NerdistIE
296 from .newgrounds import NewgroundsIE
297 from .newstube import NewstubeIE
298 from .nextmedia import (
300 NextMediaActionNewsIE,
301 AppleDailyRealtimeNewsIE,
302 AppleDailyAnimationNewsIE
304 from .nfb import NFBIE
305 from .nfl import NFLIE
311 from .niconico import NiconicoIE, NiconicoPlaylistIE
312 from .ninegag import NineGagIE
313 from .noco import NocoIE
314 from .normalboots import NormalbootsIE
315 from .nosvideo import NosVideoIE
316 from .novamov import NovaMovIE
317 from .nowness import NownessIE
318 from .nowvideo import NowVideoIE
330 from .ntvde import NTVDeIE
331 from .ntvru import NTVRuIE
332 from .nytimes import NYTimesIE
333 from .nuvid import NuvidIE
334 from .oktoberfesttv import OktoberfestTVIE
335 from .ooyala import OoyalaIE
336 from .openfilm import OpenFilmIE
342 from .parliamentliveuk import ParliamentLiveUKIE
343 from .patreon import PatreonIE
344 from .pbs import PBSIE
345 from .phoenix import PhoenixIE
346 from .photobucket import PhotobucketIE
347 from .planetaplay import PlanetaPlayIE
348 from .played import PlayedIE
349 from .playfm import PlayFMIE
350 from .playvid import PlayvidIE
351 from .podomatic import PodomaticIE
352 from .pornhd import PornHdIE
353 from .pornhub import PornHubIE
354 from .pornotube import PornotubeIE
355 from .pornoxo import PornoXOIE
356 from .promptfile import PromptFileIE
357 from .prosiebensat1 import ProSiebenSat1IE
358 from .pyvideo import PyvideoIE
359 from .quickvid import QuickVidIE
360 from .radiode import RadioDeIE
361 from .radiobremen import RadioBremenIE
362 from .radiofrance import RadioFranceIE
363 from .rai import RaiIE
364 from .rbmaradio import RBMARadioIE
365 from .redtube import RedTubeIE
366 from .restudy import RestudyIE
367 from .reverbnation import ReverbNationIE
368 from .ringtv import RingTVIE
369 from .ro220 import Ro220IE
370 from .rottentomatoes import RottenTomatoesIE
371 from .roxwel import RoxwelIE
372 from .rtbf import RTBFIE
373 from .rte import RteIE
374 from .rtlnl import RtlNlIE
375 from .rtlnow import RTLnowIE
376 from .rtl2 import RTL2IE
377 from .rtp import RTPIE
378 from .rts import RTSIE
379 from .rtve import RTVEALaCartaIE, RTVELiveIE
380 from .ruhd import RUHDIE
381 from .rutube import (
388 from .rutv import RUTVIE
389 from .sandia import SandiaIE
390 from .sapo import SapoIE
391 from .savefrom import SaveFromIE
392 from .sbs import SBSIE
393 from .scivee import SciVeeIE
394 from .screencast import ScreencastIE
395 from .screencastomatic import ScreencastOMaticIE
396 from .screenwavemedia import CinemassacreIE, ScreenwaveMediaIE, TeamFourIE
397 from .servingsys import ServingSysIE
398 from .sexu import SexuIE
399 from .sexykarma import SexyKarmaIE
400 from .shared import SharedIE
401 from .sharesix import ShareSixIE
402 from .sina import SinaIE
403 from .slideshare import SlideshareIE
404 from .slutload import SlutloadIE
405 from .smotri import (
411 from .snotr import SnotrIE
412 from .sockshare import SockshareIE
413 from .sohu import SohuIE
414 from .soundcloud import (
420 from .soundgasm import SoundgasmIE
421 from .southpark import (
425 from .space import SpaceIE
426 from .spankwire import SpankwireIE
427 from .spiegel import SpiegelIE, SpiegelArticleIE
428 from .spiegeltv import SpiegeltvIE
429 from .spike import SpikeIE
430 from .sport5 import Sport5IE
431 from .sportbox import SportBoxIE
432 from .sportdeutschland import SportDeutschlandIE
433 from .srmediathek import SRMediathekIE
434 from .stanfordoc import StanfordOpenClassroomIE
435 from .steam import SteamIE
436 from .streamcloud import StreamcloudIE
437 from .streamcz import StreamCZIE
438 from .streetvoice import StreetVoiceIE
439 from .sunporno import SunPornoIE
440 from .svtplay import SVTPlayIE
441 from .swrmediathek import SWRMediathekIE
442 from .syfy import SyfyIE
443 from .sztvhu import SztvHuIE
444 from .tagesschau import TagesschauIE
445 from .tapely import TapelyIE
446 from .tass import TassIE
447 from .teachertube import (
451 from .teachingchannel import TeachingChannelIE
452 from .teamcoco import TeamcocoIE
453 from .techtalks import TechTalksIE
454 from .ted import TEDIE
455 from .telebruxelles import TeleBruxellesIE
456 from .telecinco import TelecincoIE
457 from .telemb import TeleMBIE
458 from .teletask import TeleTaskIE
459 from .tenplay import TenPlayIE
460 from .testurl import TestURLIE
461 from .testtube import TestTubeIE
462 from .tf1 import TF1IE
463 from .theonion import TheOnionIE
464 from .theplatform import ThePlatformIE
465 from .thesixtyone import TheSixtyOneIE
466 from .thisav import ThisAVIE
467 from .tinypic import TinyPicIE
468 from .tlc import TlcIE, TlcDeIE
469 from .tmz import TMZIE
470 from .tnaflix import TNAFlixIE
471 from .thvideo import (
475 from .toutv import TouTvIE
476 from .toypics import ToypicsUserIE, ToypicsIE
477 from .traileraddict import TrailerAddictIE
478 from .trilulilu import TriluliluIE
479 from .trutube import TruTubeIE
480 from .tube8 import Tube8IE
481 from .tudou import TudouIE
482 from .tumblr import TumblrIE
483 from .tunein import TuneInIE
484 from .turbo import TurboIE
485 from .tutv import TutvIE
486 from .tvigle import TvigleIE
487 from .tvp import TvpIE, TvpSeriesIE
488 from .tvplay import TVPlayIE
489 from .tweakers import TweakersIE
490 from .twentyfourvideo import TwentyFourVideoIE
491 from .twitch import (
496 TwitchPastBroadcastsIE,
500 from .ubu import UbuIE
505 from .unistra import UnistraIE
506 from .urort import UrortIE
507 from .ustream import UstreamIE, UstreamChannelIE
508 from .vbox7 import Vbox7IE
509 from .veehd import VeeHDIE
510 from .veoh import VeohIE
511 from .vesti import VestiIE
512 from .vevo import VevoIE
513 from .vgtv import VGTVIE
514 from .vh1 import VH1IE
515 from .vice import ViceIE
516 from .viddler import ViddlerIE
517 from .videobam import VideoBamIE
518 from .videodetective import VideoDetectiveIE
519 from .videolecturesnet import VideoLecturesNetIE
520 from .videofyme import VideofyMeIE
521 from .videomega import VideoMegaIE
522 from .videopremium import VideoPremiumIE
523 from .videott import VideoTtIE
524 from .videoweed import VideoWeedIE
525 from .vidme import VidmeIE
526 from .vidzi import VidziIE
527 from .vier import VierIE, VierVideosIE
538 from .vimple import VimpleIE
543 from .viki import VikiIE
548 from .vodlocker import VodlockerIE
549 from .vporn import VpornIE
550 from .vrt import VRTIE
551 from .vube import VubeIE
552 from .vuclip import VuClipIE
553 from .vulture import VultureIE
554 from .walla import WallaIE
555 from .washingtonpost import WashingtonPostIE
556 from .wat import WatIE
557 from .wayofthemaster import WayOfTheMasterIE
563 from .webofstories import WebOfStoriesIE
564 from .weibo import WeiboIE
565 from .wimp import WimpIE
566 from .wistia import WistiaIE
567 from .worldstarhiphop import WorldStarHipHopIE
568 from .wrzuta import WrzutaIE
569 from .wsj import WSJIE
570 from .xbef import XBefIE
571 from .xboxclips import XboxClipsIE
572 from .xhamster import XHamsterIE
573 from .xminus import XMinusIE
574 from .xnxx import XNXXIE
575 from .xvideos import XVideosIE
576 from .xtube import XTubeUserIE, XTubeIE
577 from .xuite import XuiteIE
578 from .xxxymovies import XXXYMoviesIE
583 from .yam import YamIE
584 from .yesjapan import YesJapanIE
585 from .ynet import YnetIE
586 from .youjizz import YouJizzIE
587 from .youku import YoukuIE
588 from .youporn import YouPornIE
589 from .yourupload import YourUploadIE
590 from .youtube import (
596 YoutubeRecommendedIE,
601 YoutubeSubscriptionsIE,
602 YoutubeTruncatedIDIE,
603 YoutubeTruncatedURLIE,
607 from .zdf import ZDFIE, ZDFChannelIE
608 from .zingmp3 import (
615 for name, klass in globals().items()
616 if name.endswith('IE') and name != 'GenericIE'
618 _ALL_CLASSES.append(GenericIE)
621 def gen_extractors():
622 """ Return a list of an instance of every supported extractor.
623 The order does matter; the first extractor matched is the one handling the URL.
625 return [klass() for klass in _ALL_CLASSES]
628 def list_extractors(age_limit):
630 Return a list of extractors that are suitable for the given age,
631 sorted by extractor ID.
635 filter(lambda ie: ie.is_suitable(age_limit), gen_extractors()),
636 key=lambda ie: ie.IE_NAME.lower())
639 def get_info_extractor(ie_name):
640 """Returns the info extractor class with the given ie_name"""
641 return globals()[ie_name + 'IE']