__init__.py 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641
  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 .history import HistoryIE
  192. from .hitbox import HitboxIE, HitboxLiveIE
  193. from .hornbunny import HornBunnyIE
  194. from .hostingbulk import HostingBulkIE
  195. from .hotnewhiphop import HotNewHipHopIE
  196. from .howcast import HowcastIE
  197. from .howstuffworks import HowStuffWorksIE
  198. from .huffpost import HuffPostIE
  199. from .hypem import HypemIE
  200. from .iconosquare import IconosquareIE
  201. from .ign import IGNIE, OneUPIE
  202. from .imdb import (
  203. ImdbIE,
  204. ImdbListIE
  205. )
  206. from .ina import InaIE
  207. from .infoq import InfoQIE
  208. from .instagram import InstagramIE, InstagramUserIE
  209. from .internetvideoarchive import InternetVideoArchiveIE
  210. from .iprima import IPrimaIE
  211. from .ivi import (
  212. IviIE,
  213. IviCompilationIE
  214. )
  215. from .izlesene import IzleseneIE
  216. from .jadorecettepub import JadoreCettePubIE
  217. from .jeuxvideo import JeuxVideoIE
  218. from .jove import JoveIE
  219. from .jukebox import JukeboxIE
  220. from .jpopsukitv import JpopsukiIE
  221. from .kankan import KankanIE
  222. from .karaoketv import KaraoketvIE
  223. from .keezmovies import KeezMoviesIE
  224. from .khanacademy import KhanAcademyIE
  225. from .kickstarter import KickStarterIE
  226. from .keek import KeekIE
  227. from .kontrtube import KontrTubeIE
  228. from .krasview import KrasViewIE
  229. from .ku6 import Ku6IE
  230. from .la7 import LA7IE
  231. from .laola1tv import Laola1TvIE
  232. from .lifenews import LifeNewsIE
  233. from .liveleak import LiveLeakIE
  234. from .livestream import (
  235. LivestreamIE,
  236. LivestreamOriginalIE,
  237. LivestreamShortenerIE,
  238. )
  239. from .lnkgo import LnkGoIE
  240. from .lrt import LRTIE
  241. from .lynda import (
  242. LyndaIE,
  243. LyndaCourseIE
  244. )
  245. from .m6 import M6IE
  246. from .macgamestore import MacGameStoreIE
  247. from .mailru import MailRuIE
  248. from .malemotion import MalemotionIE
  249. from .mdr import MDRIE
  250. from .metacafe import MetacafeIE
  251. from .metacritic import MetacriticIE
  252. from .mgoon import MgoonIE
  253. from .minhateca import MinhatecaIE
  254. from .ministrygrid import MinistryGridIE
  255. from .mit import TechTVMITIE, MITIE, OCWMITIE
  256. from .mitele import MiTeleIE
  257. from .mixcloud import MixcloudIE
  258. from .mlb import MLBIE
  259. from .mpora import MporaIE
  260. from .moevideo import MoeVideoIE
  261. from .mofosex import MofosexIE
  262. from .mojvideo import MojvideoIE
  263. from .moniker import MonikerIE
  264. from .mooshare import MooshareIE
  265. from .morningstar import MorningstarIE
  266. from .motherless import MotherlessIE
  267. from .motorsport import MotorsportIE
  268. from .movieclips import MovieClipsIE
  269. from .moviezine import MoviezineIE
  270. from .movshare import MovShareIE
  271. from .mtv import (
  272. MTVIE,
  273. MTVServicesEmbeddedIE,
  274. MTVIggyIE,
  275. )
  276. from .muenchentv import MuenchenTVIE
  277. from .musicplayon import MusicPlayOnIE
  278. from .musicvault import MusicVaultIE
  279. from .muzu import MuzuTVIE
  280. from .myspace import MySpaceIE, MySpaceAlbumIE
  281. from .myspass import MySpassIE
  282. from .myvideo import MyVideoIE
  283. from .myvidster import MyVidsterIE
  284. from .naver import NaverIE
  285. from .nba import NBAIE
  286. from .nbc import (
  287. NBCIE,
  288. NBCNewsIE,
  289. )
  290. from .ndr import NDRIE
  291. from .ndtv import NDTVIE
  292. from .netzkino import NetzkinoIE
  293. from .nerdcubed import NerdCubedFeedIE
  294. from .nerdist import NerdistIE
  295. from .newgrounds import NewgroundsIE
  296. from .newstube import NewstubeIE
  297. from .nextmedia import (
  298. NextMediaIE,
  299. NextMediaActionNewsIE,
  300. AppleDailyRealtimeNewsIE,
  301. AppleDailyAnimationNewsIE
  302. )
  303. from .nfb import NFBIE
  304. from .nfl import NFLIE
  305. from .nhl import (
  306. NHLIE,
  307. NHLNewsIE,
  308. NHLVideocenterIE,
  309. )
  310. from .niconico import NiconicoIE, NiconicoPlaylistIE
  311. from .ninegag import NineGagIE
  312. from .noco import NocoIE
  313. from .normalboots import NormalbootsIE
  314. from .nosvideo import NosVideoIE
  315. from .novamov import NovaMovIE
  316. from .nowness import NownessIE
  317. from .nowvideo import NowVideoIE
  318. from .npo import (
  319. NPOIE,
  320. NPOLiveIE,
  321. NPORadioIE,
  322. NPORadioFragmentIE,
  323. TegenlichtVproIE,
  324. )
  325. from .nrk import (
  326. NRKIE,
  327. NRKTVIE,
  328. )
  329. from .ntvde import NTVDeIE
  330. from .ntvru import NTVRuIE
  331. from .nytimes import NYTimesIE
  332. from .nuvid import NuvidIE
  333. from .oktoberfesttv import OktoberfestTVIE
  334. from .ooyala import OoyalaIE
  335. from .openfilm import OpenFilmIE
  336. from .orf import (
  337. ORFTVthekIE,
  338. ORFOE1IE,
  339. ORFFM4IE,
  340. )
  341. from .parliamentliveuk import ParliamentLiveUKIE
  342. from .patreon import PatreonIE
  343. from .pbs import PBSIE
  344. from .phoenix import PhoenixIE
  345. from .photobucket import PhotobucketIE
  346. from .planetaplay import PlanetaPlayIE
  347. from .played import PlayedIE
  348. from .playfm import PlayFMIE
  349. from .playvid import PlayvidIE
  350. from .podomatic import PodomaticIE
  351. from .pornhd import PornHdIE
  352. from .pornhub import PornHubIE
  353. from .pornotube import PornotubeIE
  354. from .pornoxo import PornoXOIE
  355. from .promptfile import PromptFileIE
  356. from .prosiebensat1 import ProSiebenSat1IE
  357. from .pyvideo import PyvideoIE
  358. from .quickvid import QuickVidIE
  359. from .radiode import RadioDeIE
  360. from .radiobremen import RadioBremenIE
  361. from .radiofrance import RadioFranceIE
  362. from .rai import RaiIE
  363. from .rbmaradio import RBMARadioIE
  364. from .redtube import RedTubeIE
  365. from .restudy import RestudyIE
  366. from .reverbnation import ReverbNationIE
  367. from .ringtv import RingTVIE
  368. from .ro220 import Ro220IE
  369. from .rottentomatoes import RottenTomatoesIE
  370. from .roxwel import RoxwelIE
  371. from .rtbf import RTBFIE
  372. from .rte import RteIE
  373. from .rtlnl import RtlNlIE
  374. from .rtlnow import RTLnowIE
  375. from .rtl2 import RTL2IE
  376. from .rtp import RTPIE
  377. from .rts import RTSIE
  378. from .rtve import RTVEALaCartaIE, RTVELiveIE
  379. from .ruhd import RUHDIE
  380. from .rutube import (
  381. RutubeIE,
  382. RutubeChannelIE,
  383. RutubeEmbedIE,
  384. RutubeMovieIE,
  385. RutubePersonIE,
  386. )
  387. from .rutv import RUTVIE
  388. from .sandia import SandiaIE
  389. from .sapo import SapoIE
  390. from .savefrom import SaveFromIE
  391. from .sbs import SBSIE
  392. from .scivee import SciVeeIE
  393. from .screencast import ScreencastIE
  394. from .screencastomatic import ScreencastOMaticIE
  395. from .screenwavemedia import CinemassacreIE, ScreenwaveMediaIE, TeamFourIE
  396. from .servingsys import ServingSysIE
  397. from .sexu import SexuIE
  398. from .sexykarma import SexyKarmaIE
  399. from .shared import SharedIE
  400. from .sharesix import ShareSixIE
  401. from .sina import SinaIE
  402. from .slideshare import SlideshareIE
  403. from .slutload import SlutloadIE
  404. from .smotri import (
  405. SmotriIE,
  406. SmotriCommunityIE,
  407. SmotriUserIE,
  408. SmotriBroadcastIE,
  409. )
  410. from .snotr import SnotrIE
  411. from .sockshare import SockshareIE
  412. from .sohu import SohuIE
  413. from .soundcloud import (
  414. SoundcloudIE,
  415. SoundcloudSetIE,
  416. SoundcloudUserIE,
  417. SoundcloudPlaylistIE
  418. )
  419. from .soundgasm import SoundgasmIE
  420. from .southpark import (
  421. SouthParkIE,
  422. SouthparkDeIE,
  423. )
  424. from .space import SpaceIE
  425. from .spankwire import SpankwireIE
  426. from .spiegel import SpiegelIE, SpiegelArticleIE
  427. from .spiegeltv import SpiegeltvIE
  428. from .spike import SpikeIE
  429. from .sport5 import Sport5IE
  430. from .sportbox import SportBoxIE
  431. from .sportdeutschland import SportDeutschlandIE
  432. from .srmediathek import SRMediathekIE
  433. from .stanfordoc import StanfordOpenClassroomIE
  434. from .steam import SteamIE
  435. from .streamcloud import StreamcloudIE
  436. from .streamcz import StreamCZIE
  437. from .streetvoice import StreetVoiceIE
  438. from .sunporno import SunPornoIE
  439. from .svtplay import SVTPlayIE
  440. from .swrmediathek import SWRMediathekIE
  441. from .syfy import SyfyIE
  442. from .sztvhu import SztvHuIE
  443. from .tagesschau import TagesschauIE
  444. from .tapely import TapelyIE
  445. from .tass import TassIE
  446. from .teachertube import (
  447. TeacherTubeIE,
  448. TeacherTubeUserIE,
  449. )
  450. from .teachingchannel import TeachingChannelIE
  451. from .teamcoco import TeamcocoIE
  452. from .techtalks import TechTalksIE
  453. from .ted import TEDIE
  454. from .telebruxelles import TeleBruxellesIE
  455. from .telecinco import TelecincoIE
  456. from .telemb import TeleMBIE
  457. from .teletask import TeleTaskIE
  458. from .tenplay import TenPlayIE
  459. from .testurl import TestURLIE
  460. from .testtube import TestTubeIE
  461. from .tf1 import TF1IE
  462. from .theonion import TheOnionIE
  463. from .theplatform import ThePlatformIE
  464. from .thesixtyone import TheSixtyOneIE
  465. from .thisav import ThisAVIE
  466. from .tinypic import TinyPicIE
  467. from .tlc import TlcIE, TlcDeIE
  468. from .tmz import TMZIE
  469. from .tnaflix import TNAFlixIE
  470. from .thvideo import (
  471. THVideoIE,
  472. THVideoPlaylistIE
  473. )
  474. from .toutv import TouTvIE
  475. from .toypics import ToypicsUserIE, ToypicsIE
  476. from .traileraddict import TrailerAddictIE
  477. from .trilulilu import TriluliluIE
  478. from .trutube import TruTubeIE
  479. from .tube8 import Tube8IE
  480. from .tudou import TudouIE
  481. from .tumblr import TumblrIE
  482. from .tunein import TuneInIE
  483. from .turbo import TurboIE
  484. from .tutv import TutvIE
  485. from .tvigle import TvigleIE
  486. from .tvp import TvpIE, TvpSeriesIE
  487. from .tvplay import TVPlayIE
  488. from .tweakers import TweakersIE
  489. from .twentyfourvideo import TwentyFourVideoIE
  490. from .twitch import (
  491. TwitchVideoIE,
  492. TwitchChapterIE,
  493. TwitchVodIE,
  494. TwitchProfileIE,
  495. TwitchPastBroadcastsIE,
  496. TwitchBookmarksIE,
  497. TwitchStreamIE,
  498. )
  499. from .ubu import UbuIE
  500. from .udemy import (
  501. UdemyIE,
  502. UdemyCourseIE
  503. )
  504. from .unistra import UnistraIE
  505. from .urort import UrortIE
  506. from .ustream import UstreamIE, UstreamChannelIE
  507. from .vbox7 import Vbox7IE
  508. from .veehd import VeeHDIE
  509. from .veoh import VeohIE
  510. from .vesti import VestiIE
  511. from .vevo import VevoIE
  512. from .vgtv import VGTVIE
  513. from .vh1 import VH1IE
  514. from .vice import ViceIE
  515. from .viddler import ViddlerIE
  516. from .videobam import VideoBamIE
  517. from .videodetective import VideoDetectiveIE
  518. from .videolecturesnet import VideoLecturesNetIE
  519. from .videofyme import VideofyMeIE
  520. from .videomega import VideoMegaIE
  521. from .videopremium import VideoPremiumIE
  522. from .videott import VideoTtIE
  523. from .videoweed import VideoWeedIE
  524. from .vidme import VidmeIE
  525. from .vidzi import VidziIE
  526. from .vier import VierIE, VierVideosIE
  527. from .vimeo import (
  528. VimeoIE,
  529. VimeoAlbumIE,
  530. VimeoChannelIE,
  531. VimeoGroupsIE,
  532. VimeoLikesIE,
  533. VimeoReviewIE,
  534. VimeoUserIE,
  535. VimeoWatchLaterIE,
  536. )
  537. from .vimple import VimpleIE
  538. from .vine import (
  539. VineIE,
  540. VineUserIE,
  541. )
  542. from .viki import VikiIE
  543. from .vk import (
  544. VKIE,
  545. VKUserVideosIE,
  546. )
  547. from .vodlocker import VodlockerIE
  548. from .vporn import VpornIE
  549. from .vrt import VRTIE
  550. from .vube import VubeIE
  551. from .vuclip import VuClipIE
  552. from .vulture import VultureIE
  553. from .walla import WallaIE
  554. from .washingtonpost import WashingtonPostIE
  555. from .wat import WatIE
  556. from .wayofthemaster import WayOfTheMasterIE
  557. from .wdr import (
  558. WDRIE,
  559. WDRMobileIE,
  560. WDRMausIE,
  561. )
  562. from .webofstories import WebOfStoriesIE
  563. from .weibo import WeiboIE
  564. from .wimp import WimpIE
  565. from .wistia import WistiaIE
  566. from .worldstarhiphop import WorldStarHipHopIE
  567. from .wrzuta import WrzutaIE
  568. from .wsj import WSJIE
  569. from .xbef import XBefIE
  570. from .xboxclips import XboxClipsIE
  571. from .xhamster import XHamsterIE
  572. from .xminus import XMinusIE
  573. from .xnxx import XNXXIE
  574. from .xvideos import XVideosIE
  575. from .xtube import XTubeUserIE, XTubeIE
  576. from .xuite import XuiteIE
  577. from .xxxymovies import XXXYMoviesIE
  578. from .yahoo import (
  579. YahooIE,
  580. YahooSearchIE,
  581. )
  582. from .yam import YamIE
  583. from .yesjapan import YesJapanIE
  584. from .ynet import YnetIE
  585. from .youjizz import YouJizzIE
  586. from .youku import YoukuIE
  587. from .youporn import YouPornIE
  588. from .yourupload import YourUploadIE
  589. from .youtube import (
  590. YoutubeIE,
  591. YoutubeChannelIE,
  592. YoutubeFavouritesIE,
  593. YoutubeHistoryIE,
  594. YoutubePlaylistIE,
  595. YoutubeRecommendedIE,
  596. YoutubeSearchDateIE,
  597. YoutubeSearchIE,
  598. YoutubeSearchURLIE,
  599. YoutubeShowIE,
  600. YoutubeSubscriptionsIE,
  601. YoutubeTruncatedIDIE,
  602. YoutubeTruncatedURLIE,
  603. YoutubeUserIE,
  604. YoutubeWatchLaterIE,
  605. )
  606. from .zdf import ZDFIE, ZDFChannelIE
  607. from .zingmp3 import (
  608. ZingMp3SongIE,
  609. ZingMp3AlbumIE,
  610. )
  611. _ALL_CLASSES = [
  612. klass
  613. for name, klass in globals().items()
  614. if name.endswith('IE') and name != 'GenericIE'
  615. ]
  616. _ALL_CLASSES.append(GenericIE)
  617. def gen_extractors():
  618. """ Return a list of an instance of every supported extractor.
  619. The order does matter; the first extractor matched is the one handling the URL.
  620. """
  621. return [klass() for klass in _ALL_CLASSES]
  622. def list_extractors(age_limit):
  623. """
  624. Return a list of extractors that are suitable for the given age,
  625. sorted by extractor ID.
  626. """
  627. return sorted(
  628. filter(lambda ie: ie.is_suitable(age_limit), gen_extractors()),
  629. key=lambda ie: ie.IE_NAME.lower())
  630. def get_info_extractor(ie_name):
  631. """Returns the info extractor class with the given ie_name"""
  632. return globals()[ie_name + 'IE']