80fc1f6aeff5d569fbaa9f9bd2b815bb9842952e
[youtube-dl] / youtube_dl / extractor / __init__.py
1 from .academicearth import AcademicEarthCourseIE
2 from .addanime import AddAnimeIE
3 from .anitube import AnitubeIE
4 from .aparat import AparatIE
5 from .appletrailers import AppleTrailersIE
6 from .archiveorg import ArchiveOrgIE
7 from .ard import ARDIE
8 from .arte import (
9     ArteTvIE,
10     ArteTVPlus7IE,
11     ArteTVCreativeIE,
12     ArteTVFutureIE,
13     ArteTVDDCIE,
14 )
15 from .auengine import AUEngineIE
16 from .bambuser import BambuserIE, BambuserChannelIE
17 from .bandcamp import BandcampIE, BandcampAlbumIE
18 from .blinkx import BlinkxIE
19 from .bliptv import BlipTVIE, BlipTVUserIE
20 from .bloomberg import BloombergIE
21 from .breakcom import BreakIE
22 from .brightcove import BrightcoveIE
23 from .c56 import C56IE
24 from .canalplus import CanalplusIE
25 from .canalc2 import Canalc2IE
26 from .cbs import CBSIE
27 from .channel9 import Channel9IE
28 from .cinemassacre import CinemassacreIE
29 from .clipfish import ClipfishIE
30 from .cliphunter import CliphunterIE
31 from .clipsyndicate import ClipsyndicateIE
32 from .cmt import CMTIE
33 from .cnn import CNNIE
34 from .collegehumor import CollegeHumorIE
35 from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
36 from .condenast import CondeNastIE
37 from .criterion import CriterionIE
38 from .crunchyroll import CrunchyrollIE
39 from .cspan import CSpanIE
40 from .d8 import D8IE
41 from .dailymotion import (
42     DailymotionIE,
43     DailymotionPlaylistIE,
44     DailymotionUserIE,
45 )
46 from .daum import DaumIE
47 from .depositfiles import DepositFilesIE
48 from .dotsub import DotsubIE
49 from .dreisat import DreiSatIE
50 from .defense import DefenseGouvFrIE
51 from .dropbox import DropboxIE
52 from .ebaumsworld import EbaumsWorldIE
53 from .ehow import EHowIE
54 from .eighttracks import EightTracksIE
55 from .eitb import EitbIE
56 from .escapist import EscapistIE
57 from .everyonesmixtape import EveryonesMixtapeIE
58 from .exfm import ExfmIE
59 from .extremetube import ExtremeTubeIE
60 from .facebook import FacebookIE
61 from .faz import FazIE
62 from .fktv import (
63     FKTVIE,
64     FKTVPosteckeIE,
65 )
66 from .flickr import FlickrIE
67 from .franceinter import FranceInterIE
68 from .francetv import (
69     PluzzIE,
70     FranceTvInfoIE,
71     FranceTVIE,
72     GenerationQuoiIE,
73     CultureboxIE,
74 )
75 from .freesound import FreesoundIE
76 from .funnyordie import FunnyOrDieIE
77 from .gamekings import GamekingsIE
78 from .gamespot import GameSpotIE
79 from .gametrailers import GametrailersIE
80 from .generic import GenericIE
81 from .googleplus import GooglePlusIE
82 from .googlesearch import GoogleSearchIE
83 from .hark import HarkIE
84 from .hotnewhiphop import HotNewHipHopIE
85 from .howcast import HowcastIE
86 from .hypem import HypemIE
87 from .ign import IGNIE, OneUPIE
88 from .imdb import (
89     ImdbIE,
90     ImdbListIE
91 )
92 from .ina import InaIE
93 from .infoq import InfoQIE
94 from .instagram import InstagramIE
95 from .internetvideoarchive import InternetVideoArchiveIE
96 from .ivi import (
97     IviIE,
98     IviCompilationIE
99 )
100 from .jeuxvideo import JeuxVideoIE
101 from .jukebox import JukeboxIE
102 from .justintv import JustinTVIE
103 from .jpopsukitv import JpopsukiIE
104 from .kankan import KankanIE
105 from .keezmovies import KeezMoviesIE
106 from .khanacademy import KhanAcademyIE
107 from .kickstarter import KickStarterIE
108 from .keek import KeekIE
109 from .liveleak import LiveLeakIE
110 from .livestream import LivestreamIE, LivestreamOriginalIE
111 from .lynda import (
112     LyndaIE,
113     LyndaCourseIE
114 )
115 from .macgamestore import MacGameStoreIE
116 from .mdr import MDRIE
117 from .metacafe import MetacafeIE
118 from .metacritic import MetacriticIE
119 from .mit import TechTVMITIE, MITIE
120 from .mixcloud import MixcloudIE
121 from .mpora import MporaIE
122 from .mofosex import MofosexIE
123 from .mtv import (
124     MTVIE,
125     MTVIggyIE,
126 )
127 from .muzu import MuzuTVIE
128 from .myspace import MySpaceIE
129 from .myspass import MySpassIE
130 from .myvideo import MyVideoIE
131 from .naver import NaverIE
132 from .nba import NBAIE
133 from .nbc import NBCNewsIE
134 from .ndtv import NDTVIE
135 from .newgrounds import NewgroundsIE
136 from .nhl import NHLIE, NHLVideocenterIE
137 from .niconico import NiconicoIE
138 from .ninegag import NineGagIE
139 from .novamov import NovamovIE
140 from .nowness import NownessIE
141 from .nowvideo import NowVideoIE
142 from .ooyala import OoyalaIE
143 from .orf import ORFIE
144 from .pbs import PBSIE
145 from .photobucket import PhotobucketIE
146 from .podomatic import PodomaticIE
147 from .pornhd import PornHdIE
148 from .pornhub import PornHubIE
149 from .pornotube import PornotubeIE
150 from .pyvideo import PyvideoIE
151 from .radiofrance import RadioFranceIE
152 from .rbmaradio import RBMARadioIE
153 from .redtube import RedTubeIE
154 from .ringtv import RingTVIE
155 from .ro220 import Ro220IE
156 from .rottentomatoes import RottenTomatoesIE
157 from .roxwel import RoxwelIE
158 from .rtlnow import RTLnowIE
159 from .rutube import RutubeIE
160 from .servingsys import ServingSysIE
161 from .sina import SinaIE
162 from .slashdot import SlashdotIE
163 from .slideshare import SlideshareIE
164 from .smotri import (
165     SmotriIE,
166     SmotriCommunityIE,
167     SmotriUserIE,
168     SmotriBroadcastIE,
169 )
170 from .sohu import SohuIE
171 from .soundcloud import SoundcloudIE, SoundcloudSetIE, SoundcloudUserIE
172 from .southparkstudios import (
173     SouthParkStudiosIE,
174     SouthparkDeIE,
175 )
176 from .space import SpaceIE
177 from .spankwire import SpankwireIE
178 from .spiegel import SpiegelIE
179 from .spike import SpikeIE
180 from .stanfordoc import StanfordOpenClassroomIE
181 from .statigram import StatigramIE
182 from .steam import SteamIE
183 from .streamcloud import StreamcloudIE
184 from .sztvhu import SztvHuIE
185 from .teamcoco import TeamcocoIE
186 from .techtalks import TechTalksIE
187 from .ted import TEDIE
188 from .tf1 import TF1IE
189 from .theplatform import ThePlatformIE
190 from .thisav import ThisAVIE
191 from .toutv import TouTvIE
192 from .traileraddict import TrailerAddictIE
193 from .trilulilu import TriluliluIE
194 from .tube8 import Tube8IE
195 from .tudou import TudouIE
196 from .tumblr import TumblrIE
197 from .tutv import TutvIE
198 from .tvp import TvpIE
199 from .unistra import UnistraIE
200 from .ustream import UstreamIE, UstreamChannelIE
201 from .vbox7 import Vbox7IE
202 from .veehd import VeeHDIE
203 from .veoh import VeohIE
204 from .vevo import VevoIE
205 from .vice import ViceIE
206 from .viddler import ViddlerIE
207 from .videodetective import VideoDetectiveIE
208 from .videofyme import VideofyMeIE
209 from .videopremium import VideoPremiumIE
210 from .vimeo import (
211     VimeoIE,
212     VimeoChannelIE,
213     VimeoUserIE,
214     VimeoAlbumIE,
215     VimeoGroupsIE,
216     VimeoReviewIE,
217 )
218 from .vine import VineIE
219 from .viki import VikiIE
220 from .vk import VKIE
221 from .wat import WatIE
222 from .websurg import WeBSurgIE
223 from .weibo import WeiboIE
224 from .wimp import WimpIE
225 from .wistia import WistiaIE
226 from .worldstarhiphop import WorldStarHipHopIE
227 from .xhamster import XHamsterIE
228 from .xnxx import XNXXIE
229 from .xvideos import XVideosIE
230 from .xtube import XTubeIE
231 from .yahoo import (
232     YahooIE,
233     YahooNewsIE,
234     YahooSearchIE,
235 )
236 from .youjizz import YouJizzIE
237 from .youku import YoukuIE
238 from .youporn import YouPornIE
239 from .youtube import (
240     YoutubeIE,
241     YoutubePlaylistIE,
242     YoutubeSearchIE,
243     YoutubeSearchDateIE,
244     YoutubeUserIE,
245     YoutubeChannelIE,
246     YoutubeShowIE,
247     YoutubeSubscriptionsIE,
248     YoutubeRecommendedIE,
249     YoutubeTruncatedURLIE,
250     YoutubeWatchLaterIE,
251     YoutubeFavouritesIE,
252     YoutubeHistoryIE,
253     YoutubeTopListIE,
254 )
255 from .zdf import ZDFIE
256
257
258 _ALL_CLASSES = [
259     klass
260     for name, klass in globals().items()
261     if name.endswith('IE') and name != 'GenericIE'
262 ]
263 _ALL_CLASSES.append(GenericIE)
264
265
266 def gen_extractors():
267     """ Return a list of an instance of every supported extractor.
268     The order does matter; the first extractor matched is the one handling the URL.
269     """
270     return [klass() for klass in _ALL_CLASSES]
271
272
273 def get_info_extractor(ie_name):
274     """Returns the info extractor class with the given ie_name"""
275     return globals()[ie_name+'IE']