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