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