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