Merge remote-tracking branch 'yasoob/master'
[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 .canalplus import CanalplusIE
10 from .collegehumor import CollegeHumorIE
11 from .comedycentral import ComedyCentralIE
12 from .condenast import CondeNastIE
13 from .criterion import CriterionIE
14 from .cspan import CSpanIE
15 from .dailymotion import DailymotionIE
16 from .depositfiles import DepositFilesIE
17 from .dotsub import DotsubIE
18 from .dreisat import DreiSatIE
19 from .ehow import EHowIE
20 from .eighttracks import EightTracksIE
21 from .escapist import EscapistIE
22 from .exfm import ExfmIE
23 from .facebook import FacebookIE
24 from .flickr import FlickrIE
25 from .freesound import FreesoundIE
26 from .funnyordie import FunnyOrDieIE
27 from .gamespot import GameSpotIE
28 from .gametrailers import GametrailersIE
29 from .generic import GenericIE
30 from .googleplus import GooglePlusIE
31 from .googlesearch import GoogleSearchIE
32 from .hotnewhiphop import HotNewHipHopIE
33 from .howcast import HowcastIE
34 from .hypem import HypemIE
35 from .ign import IGNIE, OneUPIE
36 from .ina import InaIE
37 from .infoq import InfoQIE
38 from .instagram import InstagramIE
39 from .jukebox import JukeboxIE
40 from .justintv import JustinTVIE
41 from .keek import KeekIE
42 from .liveleak import LiveLeakIE
43 from .livestream import LivestreamIE
44 from .metacafe import MetacafeIE
45 from .mixcloud import MixcloudIE
46 from .mtv import MTVIE
47 from .myspass import MySpassIE
48 from .myvideo import MyVideoIE
49 from .nba import NBAIE
50 from .photobucket import PhotobucketIE
51 from .pornotube import PornotubeIE
52 from .rbmaradio import RBMARadioIE
53 from .redtube import RedTubeIE
54 from .ringtv import RingTVIE
55 from .sina import SinaIE
56 from .soundcloud import SoundcloudIE, SoundcloudSetIE
57 from .spiegel import SpiegelIE
58 from .stanfordoc import StanfordOpenClassroomIE
59 from .statigram import StatigramIE
60 from .steam import SteamIE
61 from .teamcoco import TeamcocoIE
62 from .ted import TEDIE
63 from .tf1 import TF1IE
64 from .thisav import ThisAVIE
65 from .traileraddict import TrailerAddictIE
66 from .tudou import TudouIE
67 from .tumblr import TumblrIE
68 from .tutv import TutvIE
69 from .ustream import UstreamIE
70 from .vbox7 import Vbox7IE
71 from .veoh import VeohIE
72 from .vevo import VevoIE
73 from .vimeo import VimeoIE
74 from .vine import VineIE
75 from .c56 import C56IE
76 from .wat import WatIE
77 from .weibo import WeiboIE
78 from .wimp import WimpIE
79 from .worldstarhiphop import WorldStarHipHopIE
80 from .xhamster import XHamsterIE
81 from .xnxx import XNXXIE
82 from .xvideos import XVideosIE
83 from .yahoo import YahooIE, YahooSearchIE
84 from .youjizz import YouJizzIE
85 from .youku import YoukuIE
86 from .youporn import YouPornIE
87 from .youtube import (
88     YoutubeIE,
89     YoutubePlaylistIE,
90     YoutubeSearchIE,
91     YoutubeUserIE,
92     YoutubeChannelIE,
93     YoutubeShowIE,
94     YoutubeSubscriptionsIE,
95 )
96 from .zdf import ZDFIE
97
98
99 _ALL_CLASSES = [
100     klass
101     for name, klass in globals().items()
102     if name.endswith('IE') and name != 'GenericIE'
103 ]
104 _ALL_CLASSES.append(GenericIE)
105
106 def gen_extractors():
107     """ Return a list of an instance of every supported extractor.
108     The order does matter; the first extractor matched is the one handling the URL.
109     """
110     return [klass() for klass in _ALL_CLASSES]
111
112 def get_info_extractor(ie_name):
113     """Returns the info extractor class with the given ie_name"""
114     return globals()[ie_name+'IE']