Merge branch 'master' into subtitles_rework
[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 ArteTvIE
6 from .auengine import AUEngineIE
7 from .bandcamp import BandcampIE
8 from .bliptv import BlipTVIE, BlipTVUserIE
9 from .breakcom import BreakIE
10 from .brightcove import BrightcoveIE
11 from .c56 import C56IE
12 from .canalplus import CanalplusIE
13 from .canalc2 import Canalc2IE
14 from .cnn import CNNIE
15 from .collegehumor import CollegeHumorIE
16 from .comedycentral import ComedyCentralIE
17 from .condenast import CondeNastIE
18 from .criterion import CriterionIE
19 from .cspan import CSpanIE
20 from .dailymotion import DailymotionIE, DailymotionPlaylistIE
21 from .daum import DaumIE
22 from .depositfiles import DepositFilesIE
23 from .dotsub import DotsubIE
24 from .dreisat import DreiSatIE
25 from .defense import DefenseGouvFrIE
26 from .ehow import EHowIE
27 from .eighttracks import EightTracksIE
28 from .escapist import EscapistIE
29 from .exfm import ExfmIE
30 from .facebook import FacebookIE
31 from .flickr import FlickrIE
32 from .francetv import (
33     PluzzIE,
34     FranceTvInfoIE,
35 )
36 from .freesound import FreesoundIE
37 from .funnyordie import FunnyOrDieIE
38 from .gamespot import GameSpotIE
39 from .gametrailers import GametrailersIE
40 from .generic import GenericIE
41 from .googleplus import GooglePlusIE
42 from .googlesearch import GoogleSearchIE
43 from .hark import HarkIE
44 from .hotnewhiphop import HotNewHipHopIE
45 from .howcast import HowcastIE
46 from .hypem import HypemIE
47 from .ign import IGNIE, OneUPIE
48 from .ina import InaIE
49 from .infoq import InfoQIE
50 from .instagram import InstagramIE
51 from .jeuxvideo import JeuxVideoIE
52 from .jukebox import JukeboxIE
53 from .justintv import JustinTVIE
54 from .kankan import KankanIE
55 from .keek import KeekIE
56 from .liveleak import LiveLeakIE
57 from .livestream import LivestreamIE
58 from .metacafe import MetacafeIE
59 from .metacritic import MetacriticIE
60 from .mit import TechTVMITIE, MITIE
61 from .mixcloud import MixcloudIE
62 from .mtv import MTVIE
63 from .muzu import MuzuTVIE
64 from .myspass import MySpassIE
65 from .myvideo import MyVideoIE
66 from .naver import NaverIE
67 from .nba import NBAIE
68 from .nbc import NBCNewsIE
69 from .ooyala import OoyalaIE
70 from .orf import ORFIE
71 from .pbs import PBSIE
72 from .photobucket import PhotobucketIE
73 from .pornotube import PornotubeIE
74 from .rbmaradio import RBMARadioIE
75 from .redtube import RedTubeIE
76 from .ringtv import RingTVIE
77 from .ro220 import Ro220IE
78 from .roxwel import RoxwelIE
79 from .rtlnow import RTLnowIE
80 from .sina import SinaIE
81 from .slashdot import SlashdotIE
82 from .slideshare import SlideshareIE
83 from .sohu import SohuIE
84 from .soundcloud import SoundcloudIE, SoundcloudSetIE
85 from .spiegel import SpiegelIE
86 from .stanfordoc import StanfordOpenClassroomIE
87 from .statigram import StatigramIE
88 from .steam import SteamIE
89 from .teamcoco import TeamcocoIE
90 from .ted import TEDIE
91 from .tf1 import TF1IE
92 from .thisav import ThisAVIE
93 from .traileraddict import TrailerAddictIE
94 from .trilulilu import TriluliluIE
95 from .tudou import TudouIE
96 from .tumblr import TumblrIE
97 from .tutv import TutvIE
98 from .unistra import UnistraIE
99 from .ustream import UstreamIE
100 from .vbox7 import Vbox7IE
101 from .veehd import VeeHDIE
102 from .veoh import VeohIE
103 from .vevo import VevoIE
104 from .videofyme import VideofyMeIE
105 from .vimeo import VimeoIE, VimeoChannelIE
106 from .vine import VineIE
107 from .wat import WatIE
108 from .weibo import WeiboIE
109 from .wimp import WimpIE
110 from .worldstarhiphop import WorldStarHipHopIE
111 from .xhamster import XHamsterIE
112 from .xnxx import XNXXIE
113 from .xvideos import XVideosIE
114 from .yahoo import YahooIE, YahooSearchIE
115 from .youjizz import YouJizzIE
116 from .youku import YoukuIE
117 from .youporn import YouPornIE
118 from .youtube import (
119     YoutubeIE,
120     YoutubePlaylistIE,
121     YoutubeSearchIE,
122     YoutubeUserIE,
123     YoutubeChannelIE,
124     YoutubeShowIE,
125     YoutubeSubscriptionsIE,
126     YoutubeRecommendedIE,
127     YoutubeWatchLaterIE,
128     YoutubeFavouritesIE,
129 )
130 from .zdf import ZDFIE
131
132
133 _ALL_CLASSES = [
134     klass
135     for name, klass in globals().items()
136     if name.endswith('IE') and name != 'GenericIE'
137 ]
138 _ALL_CLASSES.append(GenericIE)
139
140
141 def gen_extractors():
142     """ Return a list of an instance of every supported extractor.
143     The order does matter; the first extractor matched is the one handling the URL.
144     """
145     return [klass() for klass in _ALL_CLASSES]
146
147
148 def get_info_extractor(ie_name):
149     """Returns the info extractor class with the given ie_name"""
150     return globals()[ie_name+'IE']