__init__.py 17 KB

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