Merge branch 'master' of github.com:rg3/youtube-dl
[youtube-dl] / youtube_dl / extractor / __init__.py
1 from .appletrailers import AppleTrailersIE
2 from .addanime import AddAnimeIE
3 from .archiveorg import ArchiveOrgIE
4 from .ard import ARDIE
5 from .arte import ArteTvIE
6 from .auengine import AUEngineIE
7 from .bandcamp import BandcampIE
8 from .bliptv import BlipTVIE, BlipTVUserIE
9 from .breakcom import BreakIE
10 from .brightcove import BrightcoveIE
11 from .c56 import C56IE
12 from .canalplus import CanalplusIE
13 from .canalc2 import Canalc2IE
14 from .cnn import CNNIE
15 from .collegehumor import CollegeHumorIE
16 from .comedycentral import ComedyCentralIE
17 from .condenast import CondeNastIE
18 from .criterion import CriterionIE
19 from .cspan import CSpanIE
20 from .dailymotion import DailymotionIE, DailymotionPlaylistIE
21 from .daum import DaumIE
22 from .depositfiles import DepositFilesIE
23 from .dotsub import DotsubIE
24 from .dreisat import DreiSatIE
25 from .defense import DefenseGouvFrIE
26 from .ehow import EHowIE
27 from .eighttracks import EightTracksIE
28 from .escapist import EscapistIE
29 from .exfm import ExfmIE
30 from .facebook import FacebookIE
31 from .flickr import FlickrIE
32 from .freesound import FreesoundIE
33 from .funnyordie import FunnyOrDieIE
34 from .gamespot import GameSpotIE
35 from .gametrailers import GametrailersIE
36 from .generic import GenericIE
37 from .googleplus import GooglePlusIE
38 from .googlesearch import GoogleSearchIE
39 from .hark import HarkIE
40 from .hotnewhiphop import HotNewHipHopIE
41 from .howcast import HowcastIE
42 from .hypem import HypemIE
43 from .ign import IGNIE, OneUPIE
44 from .ina import InaIE
45 from .infoq import InfoQIE
46 from .instagram import InstagramIE
47 from .jeuxvideo import JeuxVideoIE
48 from .jukebox import JukeboxIE
49 from .justintv import JustinTVIE
50 from .kankan import KankanIE
51 from .keek import KeekIE
52 from .liveleak import LiveLeakIE
53 from .livestream import LivestreamIE
54 from .metacafe import MetacafeIE
55 from .metacritic import MetacriticIE
56 from .mit import TechTVMITIE, MITIE
57 from .mixcloud import MixcloudIE
58 from .mtv import MTVIE
59 from .muzu import MuzuTVIE
60 from .myspass import MySpassIE
61 from .myvideo import MyVideoIE
62 from .naver import NaverIE
63 from .nba import NBAIE
64 from .nbc import NBCNewsIE
65 from .ooyala import OoyalaIE
66 from .orf import ORFIE
67 from .pbs import PBSIE
68 from .photobucket import PhotobucketIE
69 from .pornotube import PornotubeIE
70 from .rbmaradio import RBMARadioIE
71 from .redtube import RedTubeIE
72 from .ringtv import RingTVIE
73 from .ro220 import Ro220IE
74 from .roxwel import RoxwelIE
75 from .rtlnow import RTLnowIE
76 from .sina import SinaIE
77 from .slashdot import SlashdotIE
78 from .sohu import SohuIE
79 from .soundcloud import SoundcloudIE, SoundcloudSetIE
80 from .spiegel import SpiegelIE
81 from .stanfordoc import StanfordOpenClassroomIE
82 from .statigram import StatigramIE
83 from .steam import SteamIE
84 from .teamcoco import TeamcocoIE
85 from .ted import TEDIE
86 from .tf1 import TF1IE
87 from .thisav import ThisAVIE
88 from .traileraddict import TrailerAddictIE
89 from .trilulilu import TriluliluIE
90 from .tudou import TudouIE
91 from .tumblr import TumblrIE
92 from .tutv import TutvIE
93 from .unistra import UnistraIE
94 from .ustream import UstreamIE
95 from .vbox7 import Vbox7IE
96 from .veehd import VeeHDIE
97 from .veoh import VeohIE
98 from .vevo import VevoIE
99 from .videofyme import VideofyMeIE
100 from .vimeo import VimeoIE, VimeoChannelIE
101 from .vine import VineIE
102 from .wat import WatIE
103 from .weibo import WeiboIE
104 from .wimp import WimpIE
105 from .worldstarhiphop import WorldStarHipHopIE
106 from .xhamster import XHamsterIE
107 from .xnxx import XNXXIE
108 from .xvideos import XVideosIE
109 from .yahoo import YahooIE, YahooSearchIE
110 from .youjizz import YouJizzIE
111 from .youku import YoukuIE
112 from .youporn import YouPornIE
113 from .youtube import (
114     YoutubeIE,
115     YoutubePlaylistIE,
116     YoutubeSearchIE,
117     YoutubeUserIE,
118     YoutubeChannelIE,
119     YoutubeShowIE,
120     YoutubeSubscriptionsIE,
121     YoutubeRecommendedIE,
122     YoutubeWatchLaterIE,
123     YoutubeFavouritesIE,
124 )
125 from .zdf import ZDFIE
126
127
128 _ALL_CLASSES = [
129     klass
130     for name, klass in globals().items()
131     if name.endswith('IE') and name != 'GenericIE'
132 ]
133 _ALL_CLASSES.append(GenericIE)
134
135
136 def gen_extractors():
137     """ Return a list of an instance of every supported extractor.
138     The order does matter; the first extractor matched is the one handling the URL.
139     """
140     return [klass() for klass in _ALL_CLASSES]
141
142
143 def get_info_extractor(ie_name):
144     """Returns the info extractor class with the given ie_name"""
145     return globals()[ie_name+'IE']