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