__init__.py 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465
  1. from .abc import ABCIE
  2. from .academicearth import AcademicEarthCourseIE
  3. from .addanime import AddAnimeIE
  4. from .adultswim import AdultSwimIE
  5. from .aftonbladet import AftonbladetIE
  6. from .anitube import AnitubeIE
  7. from .aol import AolIE
  8. from .allocine import AllocineIE
  9. from .aparat import AparatIE
  10. from .appletrailers import AppleTrailersIE
  11. from .archiveorg import ArchiveOrgIE
  12. from .ard import ARDIE, ARDMediathekIE
  13. from .arte import (
  14. ArteTvIE,
  15. ArteTVPlus7IE,
  16. ArteTVCreativeIE,
  17. ArteTVConcertIE,
  18. ArteTVFutureIE,
  19. ArteTVDDCIE,
  20. ArteTVEmbedIE,
  21. )
  22. from .auengine import AUEngineIE
  23. from .bambuser import BambuserIE, BambuserChannelIE
  24. from .bandcamp import BandcampIE, BandcampAlbumIE
  25. from .bbccouk import BBCCoUkIE
  26. from .bilibili import BiliBiliIE
  27. from .blinkx import BlinkxIE
  28. from .bliptv import BlipTVIE, BlipTVUserIE
  29. from .bloomberg import BloombergIE
  30. from .br import BRIE
  31. from .breakcom import BreakIE
  32. from .brightcove import BrightcoveIE
  33. from .byutv import BYUtvIE
  34. from .c56 import C56IE
  35. from .canal13cl import Canal13clIE
  36. from .canalplus import CanalplusIE
  37. from .canalc2 import Canalc2IE
  38. from .cbs import CBSIE
  39. from .cbsnews import CBSNewsIE
  40. from .ceskatelevize import CeskaTelevizeIE
  41. from .channel9 import Channel9IE
  42. from .chilloutzone import ChilloutzoneIE
  43. from .cinemassacre import CinemassacreIE
  44. from .clipfish import ClipfishIE
  45. from .cliphunter import CliphunterIE
  46. from .clipsyndicate import ClipsyndicateIE
  47. from .clubic import ClubicIE
  48. from .cmt import CMTIE
  49. from .cnet import CNETIE
  50. from .cnn import (
  51. CNNIE,
  52. CNNBlogsIE,
  53. )
  54. from .collegehumor import CollegeHumorIE
  55. from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
  56. from .condenast import CondeNastIE
  57. from .cracked import CrackedIE
  58. from .criterion import CriterionIE
  59. from .crunchyroll import CrunchyrollIE
  60. from .cspan import CSpanIE
  61. from .d8 import D8IE
  62. from .dailymotion import (
  63. DailymotionIE,
  64. DailymotionPlaylistIE,
  65. DailymotionUserIE,
  66. )
  67. from .daum import DaumIE
  68. from .dfb import DFBIE
  69. from .dotsub import DotsubIE
  70. from .dreisat import DreiSatIE
  71. from .drtv import DRTVIE
  72. from .dump import DumpIE
  73. from .defense import DefenseGouvFrIE
  74. from .discovery import DiscoveryIE
  75. from .divxstage import DivxStageIE
  76. from .dropbox import DropboxIE
  77. from .ebaumsworld import EbaumsWorldIE
  78. from .ehow import EHowIE
  79. from .eighttracks import EightTracksIE
  80. from .eitb import EitbIE
  81. from .ellentv import (
  82. EllenTVIE,
  83. EllenTVClipsIE,
  84. )
  85. from .elpais import ElPaisIE
  86. from .empflix import EmpflixIE
  87. from .engadget import EngadgetIE
  88. from .escapist import EscapistIE
  89. from .everyonesmixtape import EveryonesMixtapeIE
  90. from .exfm import ExfmIE
  91. from .expotv import ExpoTVIE
  92. from .extremetube import ExtremeTubeIE
  93. from .facebook import FacebookIE
  94. from .faz import FazIE
  95. from .fc2 import FC2IE
  96. from .firedrive import FiredriveIE
  97. from .firstpost import FirstpostIE
  98. from .firsttv import FirstTVIE
  99. from .fivemin import FiveMinIE
  100. from .fktv import (
  101. FKTVIE,
  102. FKTVPosteckeIE,
  103. )
  104. from .flickr import FlickrIE
  105. from .fourtube import FourTubeIE
  106. from .franceculture import FranceCultureIE
  107. from .franceinter import FranceInterIE
  108. from .francetv import (
  109. PluzzIE,
  110. FranceTvInfoIE,
  111. FranceTVIE,
  112. GenerationQuoiIE,
  113. CultureboxIE,
  114. )
  115. from .freesound import FreesoundIE
  116. from .freespeech import FreespeechIE
  117. from .funnyordie import FunnyOrDieIE
  118. from .gamekings import GamekingsIE
  119. from .gameone import (
  120. GameOneIE,
  121. GameOnePlaylistIE,
  122. )
  123. from .gamespot import GameSpotIE
  124. from .gamestar import GameStarIE
  125. from .gametrailers import GametrailersIE
  126. from .gdcvault import GDCVaultIE
  127. from .generic import GenericIE
  128. from .godtube import GodTubeIE
  129. from .googleplus import GooglePlusIE
  130. from .googlesearch import GoogleSearchIE
  131. from .gorillavid import GorillaVidIE
  132. from .goshgay import GoshgayIE
  133. from .grooveshark import GroovesharkIE
  134. from .hark import HarkIE
  135. from .helsinki import HelsinkiIE
  136. from .hentaistigma import HentaiStigmaIE
  137. from .hornbunny import HornBunnyIE
  138. from .hotnewhiphop import HotNewHipHopIE
  139. from .howcast import HowcastIE
  140. from .howstuffworks import HowStuffWorksIE
  141. from .huffpost import HuffPostIE
  142. from .hypem import HypemIE
  143. from .iconosquare import IconosquareIE
  144. from .ign import IGNIE, OneUPIE
  145. from .imdb import (
  146. ImdbIE,
  147. ImdbListIE
  148. )
  149. from .ina import InaIE
  150. from .infoq import InfoQIE
  151. from .instagram import InstagramIE, InstagramUserIE
  152. from .internetvideoarchive import InternetVideoArchiveIE
  153. from .iprima import IPrimaIE
  154. from .ivi import (
  155. IviIE,
  156. IviCompilationIE
  157. )
  158. from .izlesene import IzleseneIE
  159. from .jadorecettepub import JadoreCettePubIE
  160. from .jeuxvideo import JeuxVideoIE
  161. from .jove import JoveIE
  162. from .jukebox import JukeboxIE
  163. from .justintv import JustinTVIE
  164. from .jpopsukitv import JpopsukiIE
  165. from .kankan import KankanIE
  166. from .keezmovies import KeezMoviesIE
  167. from .khanacademy import KhanAcademyIE
  168. from .kickstarter import KickStarterIE
  169. from .keek import KeekIE
  170. from .kontrtube import KontrTubeIE
  171. from .krasview import KrasViewIE
  172. from .ku6 import Ku6IE
  173. from .la7 import LA7IE
  174. from .lifenews import LifeNewsIE
  175. from .liveleak import LiveLeakIE
  176. from .livestream import (
  177. LivestreamIE,
  178. LivestreamOriginalIE,
  179. LivestreamShortenerIE,
  180. )
  181. from .lynda import (
  182. LyndaIE,
  183. LyndaCourseIE
  184. )
  185. from .m6 import M6IE
  186. from .macgamestore import MacGameStoreIE
  187. from .mailru import MailRuIE
  188. from .malemotion import MalemotionIE
  189. from .mdr import MDRIE
  190. from .metacafe import MetacafeIE
  191. from .metacritic import MetacriticIE
  192. from .ministrygrid import MinistryGridIE
  193. from .mit import TechTVMITIE, MITIE, OCWMITIE
  194. from .mitele import MiTeleIE
  195. from .mixcloud import MixcloudIE
  196. from .mlb import MLBIE
  197. from .mpora import MporaIE
  198. from .mofosex import MofosexIE
  199. from .mojvideo import MojvideoIE
  200. from .mooshare import MooshareIE
  201. from .morningstar import MorningstarIE
  202. from .motherless import MotherlessIE
  203. from .motorsport import MotorsportIE
  204. from .movieclips import MovieClipsIE
  205. from .moviezine import MoviezineIE
  206. from .movshare import MovShareIE
  207. from .mtv import (
  208. MTVIE,
  209. MTVServicesEmbeddedIE,
  210. MTVIggyIE,
  211. )
  212. from .musicplayon import MusicPlayOnIE
  213. from .musicvault import MusicVaultIE
  214. from .muzu import MuzuTVIE
  215. from .myspace import MySpaceIE
  216. from .myspass import MySpassIE
  217. from .myvideo import MyVideoIE
  218. from .naver import NaverIE
  219. from .nba import NBAIE
  220. from .nbc import (
  221. NBCIE,
  222. NBCNewsIE,
  223. )
  224. from .ndr import NDRIE
  225. from .ndtv import NDTVIE
  226. from .newgrounds import NewgroundsIE
  227. from .newstube import NewstubeIE
  228. from .nfb import NFBIE
  229. from .nhl import NHLIE, NHLVideocenterIE
  230. from .niconico import NiconicoIE
  231. from .ninegag import NineGagIE
  232. from .noco import NocoIE
  233. from .normalboots import NormalbootsIE
  234. from .novamov import NovaMovIE
  235. from .nowness import NownessIE
  236. from .nowvideo import NowVideoIE
  237. from .npo import NPOIE
  238. from .nrk import (
  239. NRKIE,
  240. NRKTVIE,
  241. )
  242. from .ntv import NTVIE
  243. from .nytimes import NYTimesIE
  244. from .nuvid import NuvidIE
  245. from .ooyala import OoyalaIE
  246. from .orf import (
  247. ORFTVthekIE,
  248. ORFOE1IE,
  249. ORFFM4IE,
  250. )
  251. from .parliamentliveuk import ParliamentLiveUKIE
  252. from .patreon import PatreonIE
  253. from .pbs import PBSIE
  254. from .photobucket import PhotobucketIE
  255. from .playfm import PlayFMIE
  256. from .playvid import PlayvidIE
  257. from .podomatic import PodomaticIE
  258. from .pornhd import PornHdIE
  259. from .pornhub import PornHubIE
  260. from .pornotube import PornotubeIE
  261. from .promptfile import PromptFileIE
  262. from .prosiebensat1 import ProSiebenSat1IE
  263. from .pyvideo import PyvideoIE
  264. from .radiofrance import RadioFranceIE
  265. from .rai import RaiIE
  266. from .rbmaradio import RBMARadioIE
  267. from .redtube import RedTubeIE
  268. from .reverbnation import ReverbNationIE
  269. from .ringtv import RingTVIE
  270. from .ro220 import Ro220IE
  271. from .rottentomatoes import RottenTomatoesIE
  272. from .roxwel import RoxwelIE
  273. from .rtbf import RTBFIE
  274. from .rtlnl import RtlXlIE
  275. from .rtlnow import RTLnowIE
  276. from .rts import RTSIE
  277. from .rtve import RTVEALaCartaIE, RTVELiveIE
  278. from .ruhd import RUHDIE
  279. from .rutube import (
  280. RutubeIE,
  281. RutubeChannelIE,
  282. RutubeMovieIE,
  283. RutubePersonIE,
  284. )
  285. from .rutv import RUTVIE
  286. from .sapo import SapoIE
  287. from .savefrom import SaveFromIE
  288. from .sbs import SBSIE
  289. from .scivee import SciVeeIE
  290. from .screencast import ScreencastIE
  291. from .servingsys import ServingSysIE
  292. from .shared import SharedIE
  293. from .sina import SinaIE
  294. from .slideshare import SlideshareIE
  295. from .slutload import SlutloadIE
  296. from .smotri import (
  297. SmotriIE,
  298. SmotriCommunityIE,
  299. SmotriUserIE,
  300. SmotriBroadcastIE,
  301. )
  302. from .snotr import SnotrIE
  303. from .sockshare import SockshareIE
  304. from .sohu import SohuIE
  305. from .soundcloud import (
  306. SoundcloudIE,
  307. SoundcloudSetIE,
  308. SoundcloudUserIE,
  309. SoundcloudPlaylistIE
  310. )
  311. from .soundgasm import SoundgasmIE
  312. from .southpark import (
  313. SouthParkIE,
  314. SouthparkDeIE,
  315. )
  316. from .space import SpaceIE
  317. from .spankwire import SpankwireIE
  318. from .spiegel import SpiegelIE
  319. from .spiegeltv import SpiegeltvIE
  320. from .spike import SpikeIE
  321. from .sportdeutschland import SportDeutschlandIE
  322. from .stanfordoc import StanfordOpenClassroomIE
  323. from .steam import SteamIE
  324. from .streamcloud import StreamcloudIE
  325. from .streamcz import StreamCZIE
  326. from .swrmediathek import SWRMediathekIE
  327. from .syfy import SyfyIE
  328. from .sztvhu import SztvHuIE
  329. from .tagesschau import TagesschauIE
  330. from .teachertube import (
  331. TeacherTubeIE,
  332. TeacherTubeUserIE,
  333. )
  334. from .teachingchannel import TeachingChannelIE
  335. from .teamcoco import TeamcocoIE
  336. from .techtalks import TechTalksIE
  337. from .ted import TEDIE
  338. from .tenplay import TenPlayIE
  339. from .testurl import TestURLIE
  340. from .tf1 import TF1IE
  341. from .theplatform import ThePlatformIE
  342. from .thisav import ThisAVIE
  343. from .tinypic import TinyPicIE
  344. from .tlc import TlcIE, TlcDeIE
  345. from .toutv import TouTvIE
  346. from .toypics import ToypicsUserIE, ToypicsIE
  347. from .traileraddict import TrailerAddictIE
  348. from .trilulilu import TriluliluIE
  349. from .trutube import TruTubeIE
  350. from .tube8 import Tube8IE
  351. from .tudou import TudouIE
  352. from .tumblr import TumblrIE
  353. from .tutv import TutvIE
  354. from .tvigle import TvigleIE
  355. from .tvp import TvpIE
  356. from .tvplay import TVPlayIE
  357. from .ubu import UbuIE
  358. from .udemy import (
  359. UdemyIE,
  360. UdemyCourseIE
  361. )
  362. from .unistra import UnistraIE
  363. from .urort import UrortIE
  364. from .ustream import UstreamIE, UstreamChannelIE
  365. from .vbox7 import Vbox7IE
  366. from .veehd import VeeHDIE
  367. from .veoh import VeohIE
  368. from .vesti import VestiIE
  369. from .vevo import VevoIE
  370. from .vh1 import VH1IE
  371. from .viddler import ViddlerIE
  372. from .videobam import VideoBamIE
  373. from .videodetective import VideoDetectiveIE
  374. from .videolecturesnet import VideoLecturesNetIE
  375. from .videofyme import VideofyMeIE
  376. from .videopremium import VideoPremiumIE
  377. from .videott import VideoTtIE
  378. from .videoweed import VideoWeedIE
  379. from .vidme import VidmeIE
  380. from .vimeo import (
  381. VimeoIE,
  382. VimeoChannelIE,
  383. VimeoUserIE,
  384. VimeoAlbumIE,
  385. VimeoGroupsIE,
  386. VimeoReviewIE,
  387. VimeoWatchLaterIE,
  388. )
  389. from .vimple import VimpleIE
  390. from .vine import (
  391. VineIE,
  392. VineUserIE,
  393. )
  394. from .viki import VikiIE
  395. from .vk import VKIE
  396. from .vodlocker import VodlockerIE
  397. from .vube import VubeIE
  398. from .vuclip import VuClipIE
  399. from .vulture import VultureIE
  400. from .washingtonpost import WashingtonPostIE
  401. from .wat import WatIE
  402. from .wayofthemaster import WayOfTheMasterIE
  403. from .wdr import (
  404. WDRIE,
  405. WDRMobileIE,
  406. WDRMausIE,
  407. )
  408. from .weibo import WeiboIE
  409. from .wimp import WimpIE
  410. from .wistia import WistiaIE
  411. from .worldstarhiphop import WorldStarHipHopIE
  412. from .wrzuta import WrzutaIE
  413. from .xbef import XBefIE
  414. from .xboxclips import XboxClipsIE
  415. from .xhamster import XHamsterIE
  416. from .xnxx import XNXXIE
  417. from .xvideos import XVideosIE
  418. from .xtube import XTubeUserIE, XTubeIE
  419. from .yahoo import (
  420. YahooIE,
  421. YahooNewsIE,
  422. YahooSearchIE,
  423. )
  424. from .youjizz import YouJizzIE
  425. from .youku import YoukuIE
  426. from .youporn import YouPornIE
  427. from .youtube import (
  428. YoutubeIE,
  429. YoutubeChannelIE,
  430. YoutubeFavouritesIE,
  431. YoutubeHistoryIE,
  432. YoutubePlaylistIE,
  433. YoutubeRecommendedIE,
  434. YoutubeSearchDateIE,
  435. YoutubeSearchIE,
  436. YoutubeSearchURLIE,
  437. YoutubeShowIE,
  438. YoutubeSubscriptionsIE,
  439. YoutubeTopListIE,
  440. YoutubeTruncatedURLIE,
  441. YoutubeUserIE,
  442. YoutubeWatchLaterIE,
  443. )
  444. from .zdf import ZDFIE
  445. _ALL_CLASSES = [
  446. klass
  447. for name, klass in globals().items()
  448. if name.endswith('IE') and name != 'GenericIE'
  449. ]
  450. _ALL_CLASSES.append(GenericIE)
  451. def gen_extractors():
  452. """ Return a list of an instance of every supported extractor.
  453. The order does matter; the first extractor matched is the one handling the URL.
  454. """
  455. return [klass() for klass in _ALL_CLASSES]
  456. def get_info_extractor(ie_name):
  457. """Returns the info extractor class with the given ie_name"""
  458. return globals()[ie_name+'IE']