Add support for crunchyroll.com
[youtube-dl] / youtube_dl / extractor / __init__.py
1 from .appletrailers import AppleTrailersIE
2 from .addanime import AddAnimeIE
3 from .archiveorg import ArchiveOrgIE
4 from .ard import ARDIE
5 from .arte import (
6     ArteTvIE,
7     ArteTVPlus7IE,
8     ArteTVCreativeIE,
9     ArteTVFutureIE,
10 )
11 from .auengine import AUEngineIE
12 from .bandcamp import BandcampIE
13 from .bliptv import BlipTVIE, BlipTVUserIE
14 from .bloomberg import BloombergIE
15 from .breakcom import BreakIE
16 from .brightcove import BrightcoveIE
17 from .c56 import C56IE
18 from .canalplus import CanalplusIE
19 from .canalc2 import Canalc2IE
20 from .cinemassacre import CinemassacreIE
21 from .cnn import CNNIE
22 from .collegehumor import CollegeHumorIE
23 from .comedycentral import ComedyCentralIE
24 from .condenast import CondeNastIE
25 from .criterion import CriterionIE
26 from .crunchyroll import CrunchyrollIE
27 from .cspan import CSpanIE
28 from .dailymotion import (
29     DailymotionIE,
30     DailymotionPlaylistIE,
31     DailymotionUserIE,
32 )
33 from .daum import DaumIE
34 from .depositfiles import DepositFilesIE
35 from .dotsub import DotsubIE
36 from .dreisat import DreiSatIE
37 from .defense import DefenseGouvFrIE
38 from .ebaumsworld import EbaumsWorldIE
39 from .ehow import EHowIE
40 from .eighttracks import EightTracksIE
41 from .escapist import EscapistIE
42 from .exfm import ExfmIE
43 from .facebook import FacebookIE
44 from .faz import FazIE
45 from .fktv import (
46     FKTVIE,
47     FKTVPosteckeIE,
48 )
49 from .flickr import FlickrIE
50 from .francetv import (
51     PluzzIE,
52     FranceTvInfoIE,
53     France2IE,
54     GenerationQuoiIE
55 )
56 from .freesound import FreesoundIE
57 from .funnyordie import FunnyOrDieIE
58 from .gamespot import GameSpotIE
59 from .gametrailers import GametrailersIE
60 from .generic import GenericIE
61 from .googleplus import GooglePlusIE
62 from .googlesearch import GoogleSearchIE
63 from .hark import HarkIE
64 from .hotnewhiphop import HotNewHipHopIE
65 from .howcast import HowcastIE
66 from .hypem import HypemIE
67 from .ign import IGNIE, OneUPIE
68 from .ina import InaIE
69 from .infoq import InfoQIE
70 from .instagram import InstagramIE
71 from .internetvideoarchive import InternetVideoArchiveIE
72 from .jeuxvideo import JeuxVideoIE
73 from .jukebox import JukeboxIE
74 from .justintv import JustinTVIE
75 from .kankan import KankanIE
76 from .keezmovies import KeezMoviesIE
77 from .kickstarter import KickStarterIE
78 from .keek import KeekIE
79 from .liveleak import LiveLeakIE
80 from .livestream import LivestreamIE
81 from .metacafe import MetacafeIE
82 from .metacritic import MetacriticIE
83 from .mit import TechTVMITIE, MITIE
84 from .mixcloud import MixcloudIE
85 from .mtv import MTVIE
86 from .muzu import MuzuTVIE
87 from .myspace import MySpaceIE
88 from .myspass import MySpassIE
89 from .myvideo import MyVideoIE
90 from .naver import NaverIE
91 from .nba import NBAIE
92 from .nbc import NBCNewsIE
93 from .newgrounds import NewgroundsIE
94 from .nhl import NHLIE, NHLVideocenterIE
95 from .nowvideo import NowVideoIE
96 from .ooyala import OoyalaIE
97 from .orf import ORFIE
98 from .pbs import PBSIE
99 from .photobucket import PhotobucketIE
100 from .pornhub import PornHubIE
101 from .pornotube import PornotubeIE
102 from .rbmaradio import RBMARadioIE
103 from .redtube import RedTubeIE
104 from .ringtv import RingTVIE
105 from .ro220 import Ro220IE
106 from .rottentomatoes import RottenTomatoesIE
107 from .roxwel import RoxwelIE
108 from .rtlnow import RTLnowIE
109 from .rutube import RutubeIE
110 from .sina import SinaIE
111 from .slashdot import SlashdotIE
112 from .slideshare import SlideshareIE
113 from .sohu import SohuIE
114 from .soundcloud import SoundcloudIE, SoundcloudSetIE, SoundcloudUserIE
115 from .southparkstudios import SouthParkStudiosIE
116 from .spankwire import SpankwireIE
117 from .spiegel import SpiegelIE
118 from .stanfordoc import StanfordOpenClassroomIE
119 from .statigram import StatigramIE
120 from .steam import SteamIE
121 from .sztvhu import SztvHuIE
122 from .teamcoco import TeamcocoIE
123 from .techtalks import TechTalksIE
124 from .ted import TEDIE
125 from .tf1 import TF1IE
126 from .thisav import ThisAVIE
127 from .traileraddict import TrailerAddictIE
128 from .trilulilu import TriluliluIE
129 from .tube8 import Tube8IE
130 from .tudou import TudouIE
131 from .tumblr import TumblrIE
132 from .tutv import TutvIE
133 from .unistra import UnistraIE
134 from .ustream import UstreamIE, UstreamChannelIE
135 from .vbox7 import Vbox7IE
136 from .veehd import VeeHDIE
137 from .veoh import VeohIE
138 from .vevo import VevoIE
139 from .vice import ViceIE
140 from .viddler import ViddlerIE
141 from .videodetective import VideoDetectiveIE
142 from .videofyme import VideofyMeIE
143 from .videopremium import VideoPremiumIE
144 from .vimeo import VimeoIE, VimeoChannelIE
145 from .vine import VineIE
146 from .vk import VKIE
147 from .wat import WatIE
148 from .websurg import WeBSurgIE
149 from .weibo import WeiboIE
150 from .wimp import WimpIE
151 from .worldstarhiphop import WorldStarHipHopIE
152 from .xhamster import XHamsterIE
153 from .xnxx import XNXXIE
154 from .xvideos import XVideosIE
155 from .yahoo import YahooIE, YahooSearchIE
156 from .youjizz import YouJizzIE
157 from .youku import YoukuIE
158 from .youporn import YouPornIE
159 from .youtube import (
160     YoutubeIE,
161     YoutubePlaylistIE,
162     YoutubeSearchIE,
163     YoutubeUserIE,
164     YoutubeChannelIE,
165     YoutubeShowIE,
166     YoutubeSubscriptionsIE,
167     YoutubeRecommendedIE,
168     YoutubeTruncatedURLIE,
169     YoutubeWatchLaterIE,
170     YoutubeFavouritesIE,
171 )
172 from .zdf import ZDFIE
173
174
175 _ALL_CLASSES = [
176     klass
177     for name, klass in globals().items()
178     if name.endswith('IE') and name != 'GenericIE'
179 ]
180 _ALL_CLASSES.append(GenericIE)
181
182
183 def gen_extractors():
184     """ Return a list of an instance of every supported extractor.
185     The order does matter; the first extractor matched is the one handling the URL.
186     """
187     return [klass() for klass in _ALL_CLASSES]
188
189
190 def get_info_extractor(ie_name):
191     """Returns the info extractor class with the given ie_name"""
192     return globals()[ie_name+'IE']