__init__.py 17 KB

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