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