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