Merge remote-tracking branch 'jaimemf/format_spec_groups' (closes #6124)
[youtube-dl] / youtube_dl / extractor / __init__.py
1 from __future__ import unicode_literals
2
3 from .abc import ABCIE
4 from .abc7news import Abc7NewsIE
5 from .academicearth import AcademicEarthCourseIE
6 from .addanime import AddAnimeIE
7 from .adobetv import (
8     AdobeTVIE,
9     AdobeTVVideoIE,
10 )
11 from .adultswim import AdultSwimIE
12 from .aftenposten import AftenpostenIE
13 from .aftonbladet import AftonbladetIE
14 from .airmozilla import AirMozillaIE
15 from .aljazeera import AlJazeeraIE
16 from .alphaporno import AlphaPornoIE
17 from .anitube import AnitubeIE
18 from .anysex import AnySexIE
19 from .aol import AolIE
20 from .allocine import AllocineIE
21 from .aparat import AparatIE
22 from .appleconnect import AppleConnectIE
23 from .appletrailers import AppleTrailersIE
24 from .archiveorg import ArchiveOrgIE
25 from .ard import (
26     ARDIE,
27     ARDMediathekIE,
28     SportschauIE,
29 )
30 from .arte import (
31     ArteTvIE,
32     ArteTVPlus7IE,
33     ArteTVCreativeIE,
34     ArteTVConcertIE,
35     ArteTVFutureIE,
36     ArteTVDDCIE,
37     ArteTVEmbedIE,
38 )
39 from .atresplayer import AtresPlayerIE
40 from .atttechchannel import ATTTechChannelIE
41 from .audiomack import AudiomackIE, AudiomackAlbumIE
42 from .azubu import AzubuIE
43 from .baidu import BaiduVideoIE
44 from .bambuser import BambuserIE, BambuserChannelIE
45 from .bandcamp import BandcampIE, BandcampAlbumIE
46 from .bbc import (
47     BBCCoUkIE,
48     BBCIE,
49 )
50 from .beeg import BeegIE
51 from .behindkink import BehindKinkIE
52 from .beatportpro import BeatportProIE
53 from .bet import BetIE
54 from .bild import BildIE
55 from .bilibili import BiliBiliIE
56 from .blinkx import BlinkxIE
57 from .bliptv import BlipTVIE, BlipTVUserIE
58 from .bloomberg import BloombergIE
59 from .bpb import BpbIE
60 from .br import BRIE
61 from .breakcom import BreakIE
62 from .brightcove import BrightcoveIE
63 from .buzzfeed import BuzzFeedIE
64 from .byutv import BYUtvIE
65 from .c56 import C56IE
66 from .camdemy import (
67     CamdemyIE,
68     CamdemyFolderIE
69 )
70 from .canal13cl import Canal13clIE
71 from .canalplus import CanalplusIE
72 from .canalc2 import Canalc2IE
73 from .cbs import CBSIE
74 from .cbsnews import CBSNewsIE
75 from .cbssports import CBSSportsIE
76 from .ccc import CCCIE
77 from .ceskatelevize import CeskaTelevizeIE
78 from .channel9 import Channel9IE
79 from .chilloutzone import ChilloutzoneIE
80 from .chirbit import (
81     ChirbitIE,
82     ChirbitProfileIE,
83 )
84 from .cinchcast import CinchcastIE
85 from .cinemassacre import CinemassacreIE
86 from .clipfish import ClipfishIE
87 from .cliphunter import CliphunterIE
88 from .clipsyndicate import ClipsyndicateIE
89 from .cloudy import CloudyIE
90 from .clubic import ClubicIE
91 from .cmt import CMTIE
92 from .cnet import CNETIE
93 from .cnn import (
94     CNNIE,
95     CNNBlogsIE,
96     CNNArticleIE,
97 )
98 from .collegehumor import CollegeHumorIE
99 from .collegerama import CollegeRamaIE
100 from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
101 from .comcarcoff import ComCarCoffIE
102 from .commonmistakes import CommonMistakesIE, UnicodeBOMIE
103 from .condenast import CondeNastIE
104 from .cracked import CrackedIE
105 from .criterion import CriterionIE
106 from .crooksandliars import CrooksAndLiarsIE
107 from .crunchyroll import (
108     CrunchyrollIE,
109     CrunchyrollShowPlaylistIE
110 )
111 from .cspan import CSpanIE
112 from .ctsnews import CtsNewsIE
113 from .dailymotion import (
114     DailymotionIE,
115     DailymotionPlaylistIE,
116     DailymotionUserIE,
117     DailymotionCloudIE,
118 )
119 from .daum import DaumIE
120 from .dbtv import DBTVIE
121 from .dctp import DctpTvIE
122 from .deezer import DeezerPlaylistIE
123 from .dfb import DFBIE
124 from .dhm import DHMIE
125 from .dotsub import DotsubIE
126 from .douyutv import DouyuTVIE
127 from .dramafever import (
128     DramaFeverIE,
129     DramaFeverSeriesIE,
130 )
131 from .dreisat import DreiSatIE
132 from .drbonanza import DRBonanzaIE
133 from .drtuber import DrTuberIE
134 from .drtv import DRTVIE
135 from .dvtv import DVTVIE
136 from .dump import DumpIE
137 from .dumpert import DumpertIE
138 from .defense import DefenseGouvFrIE
139 from .discovery import DiscoveryIE
140 from .divxstage import DivxStageIE
141 from .dropbox import DropboxIE
142 from .eagleplatform import EaglePlatformIE
143 from .ebaumsworld import EbaumsWorldIE
144 from .echomsk import EchoMskIE
145 from .ehow import EHowIE
146 from .eighttracks import EightTracksIE
147 from .einthusan import EinthusanIE
148 from .eitb import EitbIE
149 from .ellentv import (
150     EllenTVIE,
151     EllenTVClipsIE,
152 )
153 from .elpais import ElPaisIE
154 from .embedly import EmbedlyIE
155 from .engadget import EngadgetIE
156 from .eporner import EpornerIE
157 from .eroprofile import EroProfileIE
158 from .escapist import EscapistIE
159 from .espn import ESPNIE
160 from .everyonesmixtape import EveryonesMixtapeIE
161 from .exfm import ExfmIE
162 from .expotv import ExpoTVIE
163 from .extremetube import ExtremeTubeIE
164 from .facebook import FacebookIE
165 from .faz import FazIE
166 from .fc2 import FC2IE
167 from .firstpost import FirstpostIE
168 from .firsttv import FirstTVIE
169 from .fivemin import FiveMinIE
170 from .fivetv import FiveTVIE
171 from .fktv import (
172     FKTVIE,
173     FKTVPosteckeIE,
174 )
175 from .flickr import FlickrIE
176 from .folketinget import FolketingetIE
177 from .footyroom import FootyRoomIE
178 from .fourtube import FourTubeIE
179 from .foxgay import FoxgayIE
180 from .foxnews import FoxNewsIE
181 from .foxsports import FoxSportsIE
182 from .franceculture import FranceCultureIE
183 from .franceinter import FranceInterIE
184 from .francetv import (
185     PluzzIE,
186     FranceTvInfoIE,
187     FranceTVIE,
188     GenerationQuoiIE,
189     CultureboxIE,
190 )
191 from .freesound import FreesoundIE
192 from .freespeech import FreespeechIE
193 from .freevideo import FreeVideoIE
194 from .funnyordie import FunnyOrDieIE
195 from .gamekings import GamekingsIE
196 from .gameone import (
197     GameOneIE,
198     GameOnePlaylistIE,
199 )
200 from .gamersyde import GamersydeIE
201 from .gamespot import GameSpotIE
202 from .gamestar import GameStarIE
203 from .gametrailers import GametrailersIE
204 from .gazeta import GazetaIE
205 from .gdcvault import GDCVaultIE
206 from .generic import GenericIE
207 from .gfycat import GfycatIE
208 from .giantbomb import GiantBombIE
209 from .giga import GigaIE
210 from .glide import GlideIE
211 from .globo import GloboIE
212 from .godtube import GodTubeIE
213 from .goldenmoustache import GoldenMoustacheIE
214 from .golem import GolemIE
215 from .googleplus import GooglePlusIE
216 from .googlesearch import GoogleSearchIE
217 from .gorillavid import GorillaVidIE
218 from .goshgay import GoshgayIE
219 from .groupon import GrouponIE
220 from .hark import HarkIE
221 from .hearthisat import HearThisAtIE
222 from .heise import HeiseIE
223 from .hellporno import HellPornoIE
224 from .helsinki import HelsinkiIE
225 from .hentaistigma import HentaiStigmaIE
226 from .historicfilms import HistoricFilmsIE
227 from .history import HistoryIE
228 from .hitbox import HitboxIE, HitboxLiveIE
229 from .hornbunny import HornBunnyIE
230 from .hostingbulk import HostingBulkIE
231 from .hotnewhiphop import HotNewHipHopIE
232 from .howcast import HowcastIE
233 from .howstuffworks import HowStuffWorksIE
234 from .huffpost import HuffPostIE
235 from .hypem import HypemIE
236 from .iconosquare import IconosquareIE
237 from .ign import IGNIE, OneUPIE
238 from .imdb import (
239     ImdbIE,
240     ImdbListIE
241 )
242 from .imgur import ImgurIE
243 from .ina import InaIE
244 from .infoq import InfoQIE
245 from .instagram import InstagramIE, InstagramUserIE
246 from .internetvideoarchive import InternetVideoArchiveIE
247 from .iprima import IPrimaIE
248 from .iqiyi import IqiyiIE
249 from .ir90tv import Ir90TvIE
250 from .ivi import (
251     IviIE,
252     IviCompilationIE
253 )
254 from .izlesene import IzleseneIE
255 from .jadorecettepub import JadoreCettePubIE
256 from .jeuxvideo import JeuxVideoIE
257 from .jove import JoveIE
258 from .jukebox import JukeboxIE
259 from .jpopsukitv import JpopsukiIE
260 from .kaltura import KalturaIE
261 from .kanalplay import KanalPlayIE
262 from .kankan import KankanIE
263 from .karaoketv import KaraoketvIE
264 from .karrierevideos import KarriereVideosIE
265 from .keezmovies import KeezMoviesIE
266 from .khanacademy import KhanAcademyIE
267 from .kickstarter import KickStarterIE
268 from .keek import KeekIE
269 from .kontrtube import KontrTubeIE
270 from .krasview import KrasViewIE
271 from .ku6 import Ku6IE
272 from .kuwo import (
273     KuwoIE,
274     KuwoAlbumIE,
275     KuwoChartIE,
276     KuwoSingerIE,
277     KuwoCategoryIE,
278     KuwoMvIE,
279 )
280 from .la7 import LA7IE
281 from .laola1tv import Laola1TvIE
282 from .lecture2go import Lecture2GoIE
283 from .letv import (
284     LetvIE,
285     LetvTvIE,
286     LetvPlaylistIE
287 )
288 from .libsyn import LibsynIE
289 from .lifenews import (
290     LifeNewsIE,
291     LifeEmbedIE,
292 )
293 from .liveleak import LiveLeakIE
294 from .livestream import (
295     LivestreamIE,
296     LivestreamOriginalIE,
297     LivestreamShortenerIE,
298 )
299 from .lnkgo import LnkGoIE
300 from .lrt import LRTIE
301 from .lynda import (
302     LyndaIE,
303     LyndaCourseIE
304 )
305 from .m6 import M6IE
306 from .macgamestore import MacGameStoreIE
307 from .mailru import MailRuIE
308 from .malemotion import MalemotionIE
309 from .mdr import MDRIE
310 from .megavideoz import MegaVideozIE
311 from .metacafe import MetacafeIE
312 from .metacritic import MetacriticIE
313 from .mgoon import MgoonIE
314 from .minhateca import MinhatecaIE
315 from .ministrygrid import MinistryGridIE
316 from .miomio import MioMioIE
317 from .mit import TechTVMITIE, MITIE, OCWMITIE
318 from .mitele import MiTeleIE
319 from .mixcloud import MixcloudIE
320 from .mlb import MLBIE
321 from .mpora import MporaIE
322 from .moevideo import MoeVideoIE
323 from .mofosex import MofosexIE
324 from .mojvideo import MojvideoIE
325 from .moniker import MonikerIE
326 from .mooshare import MooshareIE
327 from .morningstar import MorningstarIE
328 from .motherless import MotherlessIE
329 from .motorsport import MotorsportIE
330 from .movieclips import MovieClipsIE
331 from .moviezine import MoviezineIE
332 from .movshare import MovShareIE
333 from .mtv import (
334     MTVIE,
335     MTVServicesEmbeddedIE,
336     MTVIggyIE,
337 )
338 from .muenchentv import MuenchenTVIE
339 from .musicplayon import MusicPlayOnIE
340 from .musicvault import MusicVaultIE
341 from .muzu import MuzuTVIE
342 from .myspace import MySpaceIE, MySpaceAlbumIE
343 from .myspass import MySpassIE
344 from .myvi import MyviIE
345 from .myvideo import MyVideoIE
346 from .myvidster import MyVidsterIE
347 from .nationalgeographic import NationalGeographicIE
348 from .naver import NaverIE
349 from .nba import NBAIE
350 from .nbc import (
351     NBCIE,
352     NBCNewsIE,
353     NBCSportsIE,
354     NBCSportsVPlayerIE,
355 )
356 from .ndr import (
357     NDRIE,
358     NJoyIE,
359 )
360 from .ndtv import NDTVIE
361 from .netzkino import NetzkinoIE
362 from .nerdcubed import NerdCubedFeedIE
363 from .nerdist import NerdistIE
364 from .neteasemusic import (
365     NetEaseMusicIE,
366     NetEaseMusicAlbumIE,
367     NetEaseMusicSingerIE,
368     NetEaseMusicListIE,
369     NetEaseMusicMvIE,
370     NetEaseMusicProgramIE,
371     NetEaseMusicDjRadioIE,
372 )
373 from .newgrounds import NewgroundsIE
374 from .newstube import NewstubeIE
375 from .nextmedia import (
376     NextMediaIE,
377     NextMediaActionNewsIE,
378     AppleDailyIE,
379 )
380 from .nfb import NFBIE
381 from .nfl import NFLIE
382 from .nhl import (
383     NHLIE,
384     NHLNewsIE,
385     NHLVideocenterIE,
386 )
387 from .niconico import NiconicoIE, NiconicoPlaylistIE
388 from .ninegag import NineGagIE
389 from .noco import NocoIE
390 from .normalboots import NormalbootsIE
391 from .nosvideo import NosVideoIE
392 from .nova import NovaIE
393 from .novamov import NovaMovIE
394 from .nowness import NownessIE
395 from .nowtv import NowTVIE
396 from .nowvideo import NowVideoIE
397 from .npo import (
398     NPOIE,
399     NPOLiveIE,
400     NPORadioIE,
401     NPORadioFragmentIE,
402     VPROIE,
403     WNLIE
404 )
405 from .nrk import (
406     NRKIE,
407     NRKPlaylistIE,
408     NRKTVIE,
409 )
410 from .ntvde import NTVDeIE
411 from .ntvru import NTVRuIE
412 from .nytimes import (
413     NYTimesIE,
414     NYTimesArticleIE,
415 )
416 from .nuvid import NuvidIE
417 from .odnoklassniki import OdnoklassnikiIE
418 from .oktoberfesttv import OktoberfestTVIE
419 from .onionstudios import OnionStudiosIE
420 from .ooyala import (
421     OoyalaIE,
422     OoyalaExternalIE,
423 )
424 from .openfilm import OpenFilmIE
425 from .orf import (
426     ORFTVthekIE,
427     ORFOE1IE,
428     ORFFM4IE,
429     ORFIPTVIE,
430 )
431 from .parliamentliveuk import ParliamentLiveUKIE
432 from .patreon import PatreonIE
433 from .pbs import PBSIE
434 from .philharmoniedeparis import PhilharmonieDeParisIE
435 from .phoenix import PhoenixIE
436 from .photobucket import PhotobucketIE
437 from .pinkbike import PinkbikeIE
438 from .planetaplay import PlanetaPlayIE
439 from .pladform import PladformIE
440 from .played import PlayedIE
441 from .playfm import PlayFMIE
442 from .playvid import PlayvidIE
443 from .playwire import PlaywireIE
444 from .podomatic import PodomaticIE
445 from .porn91 import Porn91IE
446 from .pornhd import PornHdIE
447 from .pornhub import (
448     PornHubIE,
449     PornHubPlaylistIE,
450 )
451 from .pornotube import PornotubeIE
452 from .pornovoisines import PornoVoisinesIE
453 from .pornoxo import PornoXOIE
454 from .primesharetv import PrimeShareTVIE
455 from .promptfile import PromptFileIE
456 from .prosiebensat1 import ProSiebenSat1IE
457 from .puls4 import Puls4IE
458 from .pyvideo import PyvideoIE
459 from .qqmusic import (
460     QQMusicIE,
461     QQMusicSingerIE,
462     QQMusicAlbumIE,
463     QQMusicToplistIE,
464     QQMusicPlaylistIE,
465 )
466 from .quickvid import QuickVidIE
467 from .r7 import R7IE
468 from .radiode import RadioDeIE
469 from .radiojavan import RadioJavanIE
470 from .radiobremen import RadioBremenIE
471 from .radiofrance import RadioFranceIE
472 from .rai import RaiIE
473 from .rbmaradio import RBMARadioIE
474 from .rds import RDSIE
475 from .redtube import RedTubeIE
476 from .restudy import RestudyIE
477 from .reverbnation import ReverbNationIE
478 from .ringtv import RingTVIE
479 from .ro220 import Ro220IE
480 from .rottentomatoes import RottenTomatoesIE
481 from .roxwel import RoxwelIE
482 from .rtbf import RTBFIE
483 from .rte import RteIE
484 from .rtlnl import RtlNlIE
485 from .rtl2 import RTL2IE
486 from .rtp import RTPIE
487 from .rts import RTSIE
488 from .rtve import RTVEALaCartaIE, RTVELiveIE, RTVEInfantilIE
489 from .ruhd import RUHDIE
490 from .rutube import (
491     RutubeIE,
492     RutubeChannelIE,
493     RutubeEmbedIE,
494     RutubeMovieIE,
495     RutubePersonIE,
496 )
497 from .rutv import RUTVIE
498 from .ruutu import RuutuIE
499 from .sandia import SandiaIE
500 from .safari import (
501     SafariIE,
502     SafariCourseIE,
503 )
504 from .sapo import SapoIE
505 from .savefrom import SaveFromIE
506 from .sbs import SBSIE
507 from .scivee import SciVeeIE
508 from .screencast import ScreencastIE
509 from .screencastomatic import ScreencastOMaticIE
510 from .screenwavemedia import ScreenwaveMediaIE, TeamFourIE
511 from .senateisvp import SenateISVPIE
512 from .servingsys import ServingSysIE
513 from .sexu import SexuIE
514 from .sexykarma import SexyKarmaIE
515 from .shared import SharedIE
516 from .sharesix import ShareSixIE
517 from .sina import SinaIE
518 from .slideshare import SlideshareIE
519 from .slutload import SlutloadIE
520 from .smotri import (
521     SmotriIE,
522     SmotriCommunityIE,
523     SmotriUserIE,
524     SmotriBroadcastIE,
525 )
526 from .snagfilms import (
527     SnagFilmsIE,
528     SnagFilmsEmbedIE,
529 )
530 from .snotr import SnotrIE
531 from .sohu import SohuIE
532 from .soompi import (
533     SoompiIE,
534     SoompiShowIE,
535 )
536 from .soundcloud import (
537     SoundcloudIE,
538     SoundcloudSetIE,
539     SoundcloudUserIE,
540     SoundcloudPlaylistIE
541 )
542 from .soundgasm import (
543     SoundgasmIE,
544     SoundgasmProfileIE
545 )
546 from .southpark import (
547     SouthParkIE,
548     SouthParkDeIE,
549     SouthParkDkIE,
550     SouthParkEsIE,
551     SouthParkNlIE
552 )
553 from .space import SpaceIE
554 from .spankbang import SpankBangIE
555 from .spankwire import SpankwireIE
556 from .spiegel import SpiegelIE, SpiegelArticleIE
557 from .spiegeltv import SpiegeltvIE
558 from .spike import SpikeIE
559 from .sport5 import Sport5IE
560 from .sportbox import (
561     SportBoxIE,
562     SportBoxEmbedIE,
563 )
564 from .sportdeutschland import SportDeutschlandIE
565 from .srf import SrfIE
566 from .srmediathek import SRMediathekIE
567 from .ssa import SSAIE
568 from .stanfordoc import StanfordOpenClassroomIE
569 from .steam import SteamIE
570 from .streamcloud import StreamcloudIE
571 from .streamcz import StreamCZIE
572 from .streetvoice import StreetVoiceIE
573 from .sunporno import SunPornoIE
574 from .svt import (
575     SVTIE,
576     SVTPlayIE,
577 )
578 from .swrmediathek import SWRMediathekIE
579 from .syfy import SyfyIE
580 from .sztvhu import SztvHuIE
581 from .tagesschau import TagesschauIE
582 from .tapely import TapelyIE
583 from .tass import TassIE
584 from .teachertube import (
585     TeacherTubeIE,
586     TeacherTubeUserIE,
587 )
588 from .teachingchannel import TeachingChannelIE
589 from .teamcoco import TeamcocoIE
590 from .techtalks import TechTalksIE
591 from .ted import TEDIE
592 from .telebruxelles import TeleBruxellesIE
593 from .telecinco import TelecincoIE
594 from .telemb import TeleMBIE
595 from .teletask import TeleTaskIE
596 from .tenplay import TenPlayIE
597 from .testurl import TestURLIE
598 from .testtube import TestTubeIE
599 from .tf1 import TF1IE
600 from .theonion import TheOnionIE
601 from .theplatform import ThePlatformIE
602 from .thesixtyone import TheSixtyOneIE
603 from .thisamericanlife import ThisAmericanLifeIE
604 from .thisav import ThisAVIE
605 from .tinypic import TinyPicIE
606 from .tlc import TlcIE, TlcDeIE
607 from .tmz import (
608     TMZIE,
609     TMZArticleIE,
610 )
611 from .tnaflix import (
612     TNAFlixIE,
613     EMPFlixIE,
614     MovieFapIE,
615 )
616 from .thvideo import (
617     THVideoIE,
618     THVideoPlaylistIE
619 )
620 from .toutv import TouTvIE
621 from .toypics import ToypicsUserIE, ToypicsIE
622 from .traileraddict import TrailerAddictIE
623 from .trilulilu import TriluliluIE
624 from .trutube import TruTubeIE
625 from .tube8 import Tube8IE
626 from .tubitv import TubiTvIE
627 from .tudou import TudouIE
628 from .tumblr import TumblrIE
629 from .tunein import TuneInIE
630 from .turbo import TurboIE
631 from .tutv import TutvIE
632 from .tv2 import (
633     TV2IE,
634     TV2ArticleIE,
635 )
636 from .tv4 import TV4IE
637 from .tvc import (
638     TVCIE,
639     TVCArticleIE,
640 )
641 from .tvigle import TvigleIE
642 from .tvp import TvpIE, TvpSeriesIE
643 from .tvplay import TVPlayIE
644 from .tweakers import TweakersIE
645 from .twentyfourvideo import TwentyFourVideoIE
646 from .twentytwotracks import (
647     TwentyTwoTracksIE,
648     TwentyTwoTracksGenreIE
649 )
650 from .twitch import (
651     TwitchVideoIE,
652     TwitchChapterIE,
653     TwitchVodIE,
654     TwitchProfileIE,
655     TwitchPastBroadcastsIE,
656     TwitchBookmarksIE,
657     TwitchStreamIE,
658 )
659 from .twitter import TwitterCardIE
660 from .ubu import UbuIE
661 from .udemy import (
662     UdemyIE,
663     UdemyCourseIE
664 )
665 from .udn import UDNEmbedIE
666 from .ultimedia import UltimediaIE
667 from .unistra import UnistraIE
668 from .urort import UrortIE
669 from .ustream import UstreamIE, UstreamChannelIE
670 from .varzesh3 import Varzesh3IE
671 from .vbox7 import Vbox7IE
672 from .veehd import VeeHDIE
673 from .veoh import VeohIE
674 from .vessel import VesselIE
675 from .vesti import VestiIE
676 from .vevo import VevoIE
677 from .vgtv import (
678     BTArticleIE,
679     BTVestlendingenIE,
680     VGTVIE,
681 )
682 from .vh1 import VH1IE
683 from .vice import ViceIE
684 from .viddler import ViddlerIE
685 from .videobam import VideoBamIE
686 from .videodetective import VideoDetectiveIE
687 from .videolecturesnet import VideoLecturesNetIE
688 from .videofyme import VideofyMeIE
689 from .videomega import VideoMegaIE
690 from .videopremium import VideoPremiumIE
691 from .videott import VideoTtIE
692 from .videoweed import VideoWeedIE
693 from .vidme import VidmeIE
694 from .vidzi import VidziIE
695 from .vier import VierIE, VierVideosIE
696 from .viewster import ViewsterIE
697 from .vimeo import (
698     VimeoIE,
699     VimeoAlbumIE,
700     VimeoChannelIE,
701     VimeoGroupsIE,
702     VimeoLikesIE,
703     VimeoReviewIE,
704     VimeoUserIE,
705     VimeoWatchLaterIE,
706 )
707 from .vimple import VimpleIE
708 from .vine import (
709     VineIE,
710     VineUserIE,
711 )
712 from .viki import (
713     VikiIE,
714     VikiChannelIE,
715 )
716 from .vk import (
717     VKIE,
718     VKUserVideosIE,
719 )
720 from .vodlocker import VodlockerIE
721 from .voicerepublic import VoiceRepublicIE
722 from .vporn import VpornIE
723 from .vrt import VRTIE
724 from .vube import VubeIE
725 from .vuclip import VuClipIE
726 from .vulture import VultureIE
727 from .walla import WallaIE
728 from .washingtonpost import WashingtonPostIE
729 from .wat import WatIE
730 from .wayofthemaster import WayOfTheMasterIE
731 from .wdr import (
732     WDRIE,
733     WDRMobileIE,
734     WDRMausIE,
735 )
736 from .webofstories import (
737     WebOfStoriesIE,
738     WebOfStoriesPlaylistIE,
739 )
740 from .weibo import WeiboIE
741 from .wimp import WimpIE
742 from .wistia import WistiaIE
743 from .worldstarhiphop import WorldStarHipHopIE
744 from .wrzuta import WrzutaIE
745 from .wsj import WSJIE
746 from .xbef import XBefIE
747 from .xboxclips import XboxClipsIE
748 from .xhamster import (
749     XHamsterIE,
750     XHamsterEmbedIE,
751 )
752 from .xminus import XMinusIE
753 from .xnxx import XNXXIE
754 from .xstream import XstreamIE
755 from .xtube import XTubeUserIE, XTubeIE
756 from .xuite import XuiteIE
757 from .xvideos import XVideosIE
758 from .xxxymovies import XXXYMoviesIE
759 from .yahoo import (
760     YahooIE,
761     YahooSearchIE,
762 )
763 from .yam import YamIE
764 from .yandexmusic import (
765     YandexMusicTrackIE,
766     YandexMusicAlbumIE,
767     YandexMusicPlaylistIE,
768 )
769 from .yesjapan import YesJapanIE
770 from .yinyuetai import YinYueTaiIE
771 from .ynet import YnetIE
772 from .youjizz import YouJizzIE
773 from .youku import YoukuIE
774 from .youporn import YouPornIE
775 from .yourupload import YourUploadIE
776 from .youtube import (
777     YoutubeIE,
778     YoutubeChannelIE,
779     YoutubeFavouritesIE,
780     YoutubeHistoryIE,
781     YoutubePlaylistIE,
782     YoutubeRecommendedIE,
783     YoutubeSearchDateIE,
784     YoutubeSearchIE,
785     YoutubeSearchURLIE,
786     YoutubeShowIE,
787     YoutubeSubscriptionsIE,
788     YoutubeTruncatedIDIE,
789     YoutubeTruncatedURLIE,
790     YoutubeUserIE,
791     YoutubeWatchLaterIE,
792 )
793 from .zapiks import ZapiksIE
794 from .zdf import ZDFIE, ZDFChannelIE
795 from .zingmp3 import (
796     ZingMp3SongIE,
797     ZingMp3AlbumIE,
798 )
799
800 _ALL_CLASSES = [
801     klass
802     for name, klass in globals().items()
803     if name.endswith('IE') and name != 'GenericIE'
804 ]
805 _ALL_CLASSES.append(GenericIE)
806
807
808 def gen_extractors():
809     """ Return a list of an instance of every supported extractor.
810     The order does matter; the first extractor matched is the one handling the URL.
811     """
812     return [klass() for klass in _ALL_CLASSES]
813
814
815 def list_extractors(age_limit):
816     """
817     Return a list of extractors that are suitable for the given age,
818     sorted by extractor ID.
819     """
820
821     return sorted(
822         filter(lambda ie: ie.is_suitable(age_limit), gen_extractors()),
823         key=lambda ie: ie.IE_NAME.lower())
824
825
826 def get_info_extractor(ie_name):
827     """Returns the info extractor class with the given ie_name"""
828     return globals()[ie_name + 'IE']