You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

649 lines
18 KiB

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