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