Add support for video.helsinki.fi archives
[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 .franceinter import FranceInterIE
77 from .francetv import (
78     PluzzIE,
79     FranceTvInfoIE,
80     FranceTVIE,
81     GenerationQuoiIE,
82     CultureboxIE,
83 )
84 from .freesound import FreesoundIE
85 from .freespeech import FreespeechIE
86 from .funnyordie import FunnyOrDieIE
87 from .gamekings import GamekingsIE
88 from .gamespot import GameSpotIE
89 from .gametrailers import GametrailersIE
90 from .generic import GenericIE
91 from .googleplus import GooglePlusIE
92 from .googlesearch import GoogleSearchIE
93 from .hark import HarkIE
94 from .helsinki import HelsinkiIE
95 from .hotnewhiphop import HotNewHipHopIE
96 from .howcast import HowcastIE
97 from .huffpost import HuffPostIE
98 from .hypem import HypemIE
99 from .ign import IGNIE, OneUPIE
100 from .imdb import (
101     ImdbIE,
102     ImdbListIE
103 )
104 from .ina import InaIE
105 from .infoq import InfoQIE
106 from .instagram import InstagramIE
107 from .internetvideoarchive import InternetVideoArchiveIE
108 from .iprima import IPrimaIE
109 from .ivi import (
110     IviIE,
111     IviCompilationIE
112 )
113 from .jadorecettepub import JadoreCettePubIE
114 from .jeuxvideo import JeuxVideoIE
115 from .jukebox import JukeboxIE
116 from .justintv import JustinTVIE
117 from .jpopsukitv import JpopsukiIE
118 from .kankan import KankanIE
119 from .keezmovies import KeezMoviesIE
120 from .khanacademy import KhanAcademyIE
121 from .kickstarter import KickStarterIE
122 from .keek import KeekIE
123 from .kontrtube import KontrTubeIE
124 from .la7 import LA7IE
125 from .lifenews import LifeNewsIE
126 from .liveleak import LiveLeakIE
127 from .livestream import LivestreamIE, LivestreamOriginalIE
128 from .lynda import (
129     LyndaIE,
130     LyndaCourseIE
131 )
132 from .m6 import M6IE
133 from .macgamestore import MacGameStoreIE
134 from .malemotion import MalemotionIE
135 from .mdr import MDRIE
136 from .metacafe import MetacafeIE
137 from .metacritic import MetacriticIE
138 from .mit import TechTVMITIE, MITIE
139 from .mixcloud import MixcloudIE
140 from .mpora import MporaIE
141 from .mofosex import MofosexIE
142 from .mooshare import MooshareIE
143 from .mtv import (
144     MTVIE,
145     MTVIggyIE,
146 )
147 from .muzu import MuzuTVIE
148 from .myspace import MySpaceIE
149 from .myspass import MySpassIE
150 from .myvideo import MyVideoIE
151 from .naver import NaverIE
152 from .nba import NBAIE
153 from .nbc import NBCNewsIE
154 from .ndr import NDRIE
155 from .ndtv import NDTVIE
156 from .newgrounds import NewgroundsIE
157 from .nfb import NFBIE
158 from .nhl import NHLIE, NHLVideocenterIE
159 from .niconico import NiconicoIE
160 from .ninegag import NineGagIE
161 from .normalboots import NormalbootsIE
162 from .novamov import NovamovIE
163 from .nowness import NownessIE
164 from .nowvideo import NowVideoIE
165 from .ooyala import OoyalaIE
166 from .orf import ORFIE
167 from .pbs import PBSIE
168 from .photobucket import PhotobucketIE
169 from .podomatic import PodomaticIE
170 from .pornhd import PornHdIE
171 from .pornhub import PornHubIE
172 from .pornotube import PornotubeIE
173 from .pyvideo import PyvideoIE
174 from .radiofrance import RadioFranceIE
175 from .rbmaradio import RBMARadioIE
176 from .redtube import RedTubeIE
177 from .ringtv import RingTVIE
178 from .ro220 import Ro220IE
179 from .rottentomatoes import RottenTomatoesIE
180 from .roxwel import RoxwelIE
181 from .rtlnow import RTLnowIE
182 from .rutube import (
183     RutubeIE,
184     RutubeChannelIE,
185     RutubeMovieIE,
186     RutubePersonIE,
187 )
188 from .servingsys import ServingSysIE
189 from .sina import SinaIE
190 from .slashdot import SlashdotIE
191 from .slideshare import SlideshareIE
192 from .smotri import (
193     SmotriIE,
194     SmotriCommunityIE,
195     SmotriUserIE,
196     SmotriBroadcastIE,
197 )
198 from .sohu import SohuIE
199 from .soundcloud import SoundcloudIE, SoundcloudSetIE, SoundcloudUserIE
200 from .southparkstudios import (
201     SouthParkStudiosIE,
202     SouthparkDeIE,
203 )
204 from .space import SpaceIE
205 from .spankwire import SpankwireIE
206 from .spiegel import SpiegelIE
207 from .spike import SpikeIE
208 from .stanfordoc import StanfordOpenClassroomIE
209 from .statigram import StatigramIE
210 from .steam import SteamIE
211 from .streamcloud import StreamcloudIE
212 from .streamcz import StreamCZIE
213 from .sztvhu import SztvHuIE
214 from .teamcoco import TeamcocoIE
215 from .techtalks import TechTalksIE
216 from .ted import TEDIE
217 from .tf1 import TF1IE
218 from .theplatform import ThePlatformIE
219 from .thisav import ThisAVIE
220 from .tinypic import TinyPicIE
221 from .toutv import TouTvIE
222 from .traileraddict import TrailerAddictIE
223 from .trilulilu import TriluliluIE
224 from .tube8 import Tube8IE
225 from .tudou import TudouIE
226 from .tumblr import TumblrIE
227 from .tutv import TutvIE
228 from .tvp import TvpIE
229 from .unistra import UnistraIE
230 from .ustream import UstreamIE, UstreamChannelIE
231 from .vbox7 import Vbox7IE
232 from .veehd import VeeHDIE
233 from .veoh import VeohIE
234 from .vesti import VestiIE
235 from .vevo import VevoIE
236 from .vice import ViceIE
237 from .viddler import ViddlerIE
238 from .videodetective import VideoDetectiveIE
239 from .videofyme import VideofyMeIE
240 from .videopremium import VideoPremiumIE
241 from .vimeo import (
242     VimeoIE,
243     VimeoChannelIE,
244     VimeoUserIE,
245     VimeoAlbumIE,
246     VimeoGroupsIE,
247     VimeoReviewIE,
248 )
249 from .vine import VineIE
250 from .viki import VikiIE
251 from .vk import VKIE
252 from .vube import VubeIE
253 from .wat import WatIE
254 from .weibo import WeiboIE
255 from .wimp import WimpIE
256 from .wistia import WistiaIE
257 from .worldstarhiphop import WorldStarHipHopIE
258 from .xhamster import XHamsterIE
259 from .xnxx import XNXXIE
260 from .xvideos import XVideosIE
261 from .xtube import XTubeIE
262 from .yahoo import (
263     YahooIE,
264     YahooNewsIE,
265     YahooSearchIE,
266 )
267 from .youjizz import YouJizzIE
268 from .youku import YoukuIE
269 from .youporn import YouPornIE
270 from .youtube import (
271     YoutubeIE,
272     YoutubePlaylistIE,
273     YoutubeSearchIE,
274     YoutubeSearchDateIE,
275     YoutubeUserIE,
276     YoutubeChannelIE,
277     YoutubeShowIE,
278     YoutubeSubscriptionsIE,
279     YoutubeRecommendedIE,
280     YoutubeTruncatedURLIE,
281     YoutubeWatchLaterIE,
282     YoutubeFavouritesIE,
283     YoutubeHistoryIE,
284     YoutubeTopListIE,
285 )
286 from .zdf import ZDFIE
287
288
289 _ALL_CLASSES = [
290     klass
291     for name, klass in globals().items()
292     if name.endswith('IE') and name != 'GenericIE'
293 ]
294 _ALL_CLASSES.append(GenericIE)
295
296
297 def gen_extractors():
298     """ Return a list of an instance of every supported extractor.
299     The order does matter; the first extractor matched is the one handling the URL.
300     """
301     return [klass() for klass in _ALL_CLASSES]
302
303
304 def get_info_extractor(ie_name):
305     """Returns the info extractor class with the given ie_name"""
306     return globals()[ie_name+'IE']