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