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