]> jfr.im git - yt-dlp.git/blame - youtube_dl/extractor/__init__.py
Set the ext field for each format
[yt-dlp.git] / youtube_dl / extractor / __init__.py
CommitLineData
44586389 1from .appletrailers import AppleTrailersIE
2eabb802 2from .addanime import AddAnimeIE
5fe3a3c3 3from .archiveorg import ArchiveOrgIE
c59b4aae
PH
4from .ard import ARDIE
5from .arte import ArteTvIE
d798e1c7 6from .auengine import AUEngineIE
c59b4aae
PH
7from .bandcamp import BandcampIE
8from .bliptv import BlipTVIE, BlipTVUserIE
825e0984 9from .breakcom import BreakIE
fbaaad49 10from .brightcove import BrightcoveIE
341ca8d7 11from .c56 import C56IE
ffca4b5c 12from .canalplus import CanalplusIE
cd0abcc0 13from .canalc2 import Canalc2IE
1a582dd4 14from .cnn import CNNIE
c59b4aae 15from .collegehumor import CollegeHumorIE
318452bc 16from .comedycentral import ComedyCentralIE
e1fb2456 17from .condenast import CondeNastIE
159736c1 18from .criterion import CriterionIE
aa0c8739 19from .cspan import CSpanIE
a3c736de 20from .dailymotion import DailymotionIE, DailymotionPlaylistIE
150f2082 21from .daum import DaumIE
c59b4aae 22from .depositfiles import DepositFilesIE
13e06d29 23from .dotsub import DotsubIE
73e79f2a 24from .dreisat import DreiSatIE
52afe996 25from .defense import DefenseGouvFrIE
81082e04 26from .ehow import EHowIE
c59b4aae
PH
27from .eighttracks import EightTracksIE
28from .escapist import EscapistIE
b6ef4029 29from .exfm import ExfmIE
c59b4aae
PH
30from .facebook import FacebookIE
31from .flickr import FlickrIE
648d25d4
JMF
32from .francetv import (
33 PluzzIE,
34 FranceTvInfoIE,
35)
67de24e4 36from .freesound import FreesoundIE
c59b4aae 37from .funnyordie import FunnyOrDieIE
bf64ff72 38from .gamespot import GameSpotIE
c59b4aae
PH
39from .gametrailers import GametrailersIE
40from .generic import GenericIE
41from .googleplus import GooglePlusIE
42from .googlesearch import GoogleSearchIE
e3a88568 43from .hark import HarkIE
5b66de88 44from .hotnewhiphop import HotNewHipHopIE
c59b4aae
PH
45from .howcast import HowcastIE
46from .hypem import HypemIE
a95967f8 47from .ign import IGNIE, OneUPIE
c59b4aae
PH
48from .ina import InaIE
49from .infoq import InfoQIE
59fc531f 50from .instagram import InstagramIE
25b51c78 51from .jeuxvideo import JeuxVideoIE
28ef06f7 52from .jukebox import JukeboxIE
318452bc 53from .justintv import JustinTVIE
8cda9241 54from .kankan import KankanIE
f1d20fa3 55from .kickstarter import KickStarterIE
c59b4aae
PH
56from .keek import KeekIE
57from .liveleak import LiveLeakIE
b4444d5c 58from .livestream import LivestreamIE
c59b4aae 59from .metacafe import MetacafeIE
7e772752 60from .metacritic import MetacriticIE
67b22dd0 61from .mit import TechTVMITIE, MITIE
c59b4aae
PH
62from .mixcloud import MixcloudIE
63from .mtv import MTVIE
577664c8 64from .muzu import MuzuTVIE
c59b4aae
PH
65from .myspass import MySpassIE
66from .myvideo import MyVideoIE
6b95b065 67from .naver import NaverIE
c59b4aae 68from .nba import NBAIE
0bc56fa6 69from .nbc import NBCNewsIE
09825cb5 70from .ooyala import OoyalaIE
54543467 71from .orf import ORFIE
9779b63b 72from .pbs import PBSIE
c59b4aae
PH
73from .photobucket import PhotobucketIE
74from .pornotube import PornotubeIE
75from .rbmaradio import RBMARadioIE
76from .redtube import RedTubeIE
f46d31f9 77from .ringtv import RingTVIE
9460db83 78from .ro220 import Ro220IE
58261235 79from .roxwel import RoxwelIE
01b32990 80from .rtlnow import RTLnowIE
0932300e 81from .sina import SinaIE
d81aef3a 82from .slashdot import SlashdotIE
07463ea1 83from .slideshare import SlideshareIE
6624a2b0 84from .sohu import SohuIE
c59b4aae
PH
85from .soundcloud import SoundcloudIE, SoundcloudSetIE
86from .spiegel import SpiegelIE
87from .stanfordoc import StanfordOpenClassroomIE
318452bc 88from .statigram import StatigramIE
c59b4aae
PH
89from .steam import SteamIE
90from .teamcoco import TeamcocoIE
91from .ted import TEDIE
705f6f35 92from .tf1 import TF1IE
466de688 93from .thisav import ThisAVIE
887a2279 94from .traileraddict import TrailerAddictIE
341ca8d7 95from .trilulilu import TriluliluIE
318452bc 96from .tudou import TudouIE
c59b4aae 97from .tumblr import TumblrIE
9afb1afc 98from .tutv import TutvIE
f527115b 99from .unistra import UnistraIE
bfd5c93a 100from .ustream import UstreamIE, UstreamChannelIE
c59b4aae 101from .vbox7 import Vbox7IE
8e4e89f1 102from .veehd import VeeHDIE
99e350d9 103from .veoh import VeohIE
70d1924f 104from .vevo import VevoIE
bba12cec 105from .videofyme import VideofyMeIE
caeefc29 106from .vimeo import VimeoIE, VimeoChannelIE
c59b4aae 107from .vine import VineIE
705f6f35 108from .wat import WatIE
c364f15f 109from .weibo import WeiboIE
405ec05c 110from .wimp import WimpIE
c59b4aae 111from .worldstarhiphop import WorldStarHipHopIE
c59b4aae 112from .xhamster import XHamsterIE
318452bc 113from .xnxx import XNXXIE
c59b4aae
PH
114from .xvideos import XVideosIE
115from .yahoo import YahooIE, YahooSearchIE
116from .youjizz import YouJizzIE
117from .youku import YoukuIE
118from .youporn import YouPornIE
04cc9617
JMF
119from .youtube import (
120 YoutubeIE,
121 YoutubePlaylistIE,
122 YoutubeSearchIE,
123 YoutubeUserIE,
124 YoutubeChannelIE,
125 YoutubeShowIE,
126 YoutubeSubscriptionsIE,
d7ae0639 127 YoutubeRecommendedIE,
43ba5456 128 YoutubeWatchLaterIE,
c626a3d9 129 YoutubeFavouritesIE,
04cc9617 130)
c59b4aae 131from .zdf import ZDFIE
318452bc 132
f46d31f9 133
1f0483b4
PH
134_ALL_CLASSES = [
135 klass
136 for name, klass in globals().items()
137 if name.endswith('IE') and name != 'GenericIE'
138]
139_ALL_CLASSES.append(GenericIE)
f9c6cbf0 140
9460db83 141
f9c6cbf0
PH
142def gen_extractors():
143 """ Return a list of an instance of every supported extractor.
144 The order does matter; the first extractor matched is the one handling the URL.
145 """
1f0483b4 146 return [klass() for klass in _ALL_CLASSES]
f9c6cbf0 147
9460db83 148
f9c6cbf0
PH
149def get_info_extractor(ie_name):
150 """Returns the info extractor class with the given ie_name"""
151 return globals()[ie_name+'IE']