mirror of
https://github.com/l1ving/youtube-dl
synced 2024-12-22 18:43:01 +08:00
78338f71ca
The webpage only contains shortened links for the videos, since the server doesn't support HEAD requests, we use an specific extractor for them.
407 lines
11 KiB
Python
407 lines
11 KiB
Python
from .academicearth import AcademicEarthCourseIE
|
|
from .addanime import AddAnimeIE
|
|
from .aftonbladet import AftonbladetIE
|
|
from .anitube import AnitubeIE
|
|
from .aol import AolIE
|
|
from .aparat import AparatIE
|
|
from .appletrailers import AppleTrailersIE
|
|
from .archiveorg import ArchiveOrgIE
|
|
from .ard import ARDIE
|
|
from .arte import (
|
|
ArteTvIE,
|
|
ArteTVPlus7IE,
|
|
ArteTVCreativeIE,
|
|
ArteTVConcertIE,
|
|
ArteTVFutureIE,
|
|
ArteTVDDCIE,
|
|
ArteTVEmbedIE,
|
|
)
|
|
from .auengine import AUEngineIE
|
|
from .bambuser import BambuserIE, BambuserChannelIE
|
|
from .bandcamp import BandcampIE, BandcampAlbumIE
|
|
from .bbccouk import BBCCoUkIE
|
|
from .bilibili import BiliBiliIE
|
|
from .blinkx import BlinkxIE
|
|
from .bliptv import BlipTVIE, BlipTVUserIE
|
|
from .bloomberg import BloombergIE
|
|
from .br import BRIE
|
|
from .breakcom import BreakIE
|
|
from .brightcove import BrightcoveIE
|
|
from .byutv import BYUtvIE
|
|
from .c56 import C56IE
|
|
from .canal13cl import Canal13clIE
|
|
from .canalplus import CanalplusIE
|
|
from .canalc2 import Canalc2IE
|
|
from .cbs import CBSIE
|
|
from .cbsnews import CBSNewsIE
|
|
from .ceskatelevize import CeskaTelevizeIE
|
|
from .channel9 import Channel9IE
|
|
from .chilloutzone import ChilloutzoneIE
|
|
from .cinemassacre import CinemassacreIE
|
|
from .clipfish import ClipfishIE
|
|
from .cliphunter import CliphunterIE
|
|
from .clipsyndicate import ClipsyndicateIE
|
|
from .clubic import ClubicIE
|
|
from .cmt import CMTIE
|
|
from .cnet import CNETIE
|
|
from .cnn import (
|
|
CNNIE,
|
|
CNNBlogsIE,
|
|
)
|
|
from .collegehumor import CollegeHumorIE
|
|
from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
|
|
from .condenast import CondeNastIE
|
|
from .criterion import CriterionIE
|
|
from .crunchyroll import CrunchyrollIE
|
|
from .cspan import CSpanIE
|
|
from .d8 import D8IE
|
|
from .dailymotion import (
|
|
DailymotionIE,
|
|
DailymotionPlaylistIE,
|
|
DailymotionUserIE,
|
|
)
|
|
from .daum import DaumIE
|
|
from .dotsub import DotsubIE
|
|
from .dreisat import DreiSatIE
|
|
from .defense import DefenseGouvFrIE
|
|
from .discovery import DiscoveryIE
|
|
from .divxstage import DivxStageIE
|
|
from .dropbox import DropboxIE
|
|
from .ebaumsworld import EbaumsWorldIE
|
|
from .ehow import EHowIE
|
|
from .eighttracks import EightTracksIE
|
|
from .eitb import EitbIE
|
|
from .elpais import ElPaisIE
|
|
from .empflix import EmpflixIE
|
|
from .engadget import EngadgetIE
|
|
from .escapist import EscapistIE
|
|
from .everyonesmixtape import EveryonesMixtapeIE
|
|
from .exfm import ExfmIE
|
|
from .extremetube import ExtremeTubeIE
|
|
from .facebook import FacebookIE
|
|
from .faz import FazIE
|
|
from .fc2 import FC2IE
|
|
from .firstpost import FirstpostIE
|
|
from .firsttv import FirstTVIE
|
|
from .fivemin import FiveMinIE
|
|
from .fktv import (
|
|
FKTVIE,
|
|
FKTVPosteckeIE,
|
|
)
|
|
from .flickr import FlickrIE
|
|
from .fourtube import FourTubeIE
|
|
from .franceculture import FranceCultureIE
|
|
from .franceinter import FranceInterIE
|
|
from .francetv import (
|
|
PluzzIE,
|
|
FranceTvInfoIE,
|
|
FranceTVIE,
|
|
GenerationQuoiIE,
|
|
CultureboxIE,
|
|
)
|
|
from .freesound import FreesoundIE
|
|
from .freespeech import FreespeechIE
|
|
from .funnyordie import FunnyOrDieIE
|
|
from .gamekings import GamekingsIE
|
|
from .gamespot import GameSpotIE
|
|
from .gametrailers import GametrailersIE
|
|
from .gdcvault import GDCVaultIE
|
|
from .generic import GenericIE
|
|
from .googleplus import GooglePlusIE
|
|
from .googlesearch import GoogleSearchIE
|
|
from .gorillavid import GorillaVidIE
|
|
from .hark import HarkIE
|
|
from .helsinki import HelsinkiIE
|
|
from .hentaistigma import HentaiStigmaIE
|
|
from .hotnewhiphop import HotNewHipHopIE
|
|
from .howcast import HowcastIE
|
|
from .huffpost import HuffPostIE
|
|
from .hypem import HypemIE
|
|
from .iconosquare import IconosquareIE
|
|
from .ign import IGNIE, OneUPIE
|
|
from .imdb import (
|
|
ImdbIE,
|
|
ImdbListIE
|
|
)
|
|
from .ina import InaIE
|
|
from .infoq import InfoQIE
|
|
from .instagram import InstagramIE, InstagramUserIE
|
|
from .internetvideoarchive import InternetVideoArchiveIE
|
|
from .iprima import IPrimaIE
|
|
from .ivi import (
|
|
IviIE,
|
|
IviCompilationIE
|
|
)
|
|
from .jadorecettepub import JadoreCettePubIE
|
|
from .jeuxvideo import JeuxVideoIE
|
|
from .jukebox import JukeboxIE
|
|
from .justintv import JustinTVIE
|
|
from .jpopsukitv import JpopsukiIE
|
|
from .kankan import KankanIE
|
|
from .keezmovies import KeezMoviesIE
|
|
from .khanacademy import KhanAcademyIE
|
|
from .kickstarter import KickStarterIE
|
|
from .keek import KeekIE
|
|
from .kontrtube import KontrTubeIE
|
|
from .ku6 import Ku6IE
|
|
from .la7 import LA7IE
|
|
from .lifenews import LifeNewsIE
|
|
from .liveleak import LiveLeakIE
|
|
from .livestream import (
|
|
LivestreamIE,
|
|
LivestreamOriginalIE,
|
|
LivestreamShortenerIE,
|
|
)
|
|
from .lynda import (
|
|
LyndaIE,
|
|
LyndaCourseIE
|
|
)
|
|
from .m6 import M6IE
|
|
from .macgamestore import MacGameStoreIE
|
|
from .mailru import MailRuIE
|
|
from .malemotion import MalemotionIE
|
|
from .mdr import MDRIE
|
|
from .metacafe import MetacafeIE
|
|
from .metacritic import MetacriticIE
|
|
from .mit import TechTVMITIE, MITIE, OCWMITIE
|
|
from .mixcloud import MixcloudIE
|
|
from .mpora import MporaIE
|
|
from .mofosex import MofosexIE
|
|
from .mooshare import MooshareIE
|
|
from .morningstar import MorningstarIE
|
|
from .motorsport import MotorsportIE
|
|
from .moviezine import MoviezineIE
|
|
from .movshare import MovShareIE
|
|
from .mtv import (
|
|
MTVIE,
|
|
MTVServicesEmbeddedIE,
|
|
MTVIggyIE,
|
|
)
|
|
from .musicplayon import MusicPlayOnIE
|
|
from .muzu import MuzuTVIE
|
|
from .myspace import MySpaceIE
|
|
from .myspass import MySpassIE
|
|
from .myvideo import MyVideoIE
|
|
from .naver import NaverIE
|
|
from .nba import NBAIE
|
|
from .nbc import (
|
|
NBCIE,
|
|
NBCNewsIE,
|
|
)
|
|
from .ndr import NDRIE
|
|
from .ndtv import NDTVIE
|
|
from .newgrounds import NewgroundsIE
|
|
from .newstube import NewstubeIE
|
|
from .nfb import NFBIE
|
|
from .nhl import NHLIE, NHLVideocenterIE
|
|
from .niconico import NiconicoIE
|
|
from .ninegag import NineGagIE
|
|
from .noco import NocoIE
|
|
from .normalboots import NormalbootsIE
|
|
from .novamov import NovaMovIE
|
|
from .nowness import NownessIE
|
|
from .nowvideo import NowVideoIE
|
|
from .nrk import (
|
|
NRKIE,
|
|
NRKTVIE,
|
|
)
|
|
from .ntv import NTVIE
|
|
from .nytimes import NYTimesIE
|
|
from .nuvid import NuvidIE
|
|
from .oe1 import OE1IE
|
|
from .ooyala import OoyalaIE
|
|
from .orf import ORFIE
|
|
from .parliamentliveuk import ParliamentLiveUKIE
|
|
from .pbs import PBSIE
|
|
from .photobucket import PhotobucketIE
|
|
from .playvid import PlayvidIE
|
|
from .podomatic import PodomaticIE
|
|
from .pornhd import PornHdIE
|
|
from .pornhub import PornHubIE
|
|
from .pornotube import PornotubeIE
|
|
from .prosiebensat1 import ProSiebenSat1IE
|
|
from .pyvideo import PyvideoIE
|
|
from .radiofrance import RadioFranceIE
|
|
from .rai import RaiIE
|
|
from .rbmaradio import RBMARadioIE
|
|
from .redtube import RedTubeIE
|
|
from .ringtv import RingTVIE
|
|
from .ro220 import Ro220IE
|
|
from .rottentomatoes import RottenTomatoesIE
|
|
from .roxwel import RoxwelIE
|
|
from .rtbf import RTBFIE
|
|
from .rtlnow import RTLnowIE
|
|
from .rts import RTSIE
|
|
from .rtve import RTVEALaCartaIE
|
|
from .rutube import (
|
|
RutubeIE,
|
|
RutubeChannelIE,
|
|
RutubeMovieIE,
|
|
RutubePersonIE,
|
|
)
|
|
from .rutv import RUTVIE
|
|
from .savefrom import SaveFromIE
|
|
from .scivee import SciVeeIE
|
|
from .servingsys import ServingSysIE
|
|
from .sina import SinaIE
|
|
from .slideshare import SlideshareIE
|
|
from .slutload import SlutloadIE
|
|
from .smotri import (
|
|
SmotriIE,
|
|
SmotriCommunityIE,
|
|
SmotriUserIE,
|
|
SmotriBroadcastIE,
|
|
)
|
|
from .sohu import SohuIE
|
|
from .soundcloud import (
|
|
SoundcloudIE,
|
|
SoundcloudSetIE,
|
|
SoundcloudUserIE,
|
|
SoundcloudPlaylistIE
|
|
)
|
|
from .soundgasm import SoundgasmIE
|
|
from .southparkstudios import (
|
|
SouthParkStudiosIE,
|
|
SouthparkDeIE,
|
|
)
|
|
from .space import SpaceIE
|
|
from .spankwire import SpankwireIE
|
|
from .spiegel import SpiegelIE
|
|
from .spiegeltv import SpiegeltvIE
|
|
from .spike import SpikeIE
|
|
from .stanfordoc import StanfordOpenClassroomIE
|
|
from .steam import SteamIE
|
|
from .streamcloud import StreamcloudIE
|
|
from .streamcz import StreamCZIE
|
|
from .swrmediathek import SWRMediathekIE
|
|
from .syfy import SyfyIE
|
|
from .sztvhu import SztvHuIE
|
|
from .tagesschau import TagesschauIE
|
|
from .teachertube import (
|
|
TeacherTubeIE,
|
|
TeacherTubeClassroomIE,
|
|
)
|
|
from .teachingchannel import TeachingChannelIE
|
|
from .teamcoco import TeamcocoIE
|
|
from .techtalks import TechTalksIE
|
|
from .ted import TEDIE
|
|
from .testurl import TestURLIE
|
|
from .tf1 import TF1IE
|
|
from .theplatform import ThePlatformIE
|
|
from .thisav import ThisAVIE
|
|
from .tinypic import TinyPicIE
|
|
from .tlc import TlcIE, TlcDeIE
|
|
from .toutv import TouTvIE
|
|
from .toypics import ToypicsUserIE, ToypicsIE
|
|
from .traileraddict import TrailerAddictIE
|
|
from .trilulilu import TriluliluIE
|
|
from .trutube import TruTubeIE
|
|
from .tube8 import Tube8IE
|
|
from .tudou import TudouIE
|
|
from .tumblr import TumblrIE
|
|
from .tutv import TutvIE
|
|
from .tvigle import TvigleIE
|
|
from .tvp import TvpIE
|
|
from .udemy import (
|
|
UdemyIE,
|
|
UdemyCourseIE
|
|
)
|
|
from .unistra import UnistraIE
|
|
from .urort import UrortIE
|
|
from .ustream import UstreamIE, UstreamChannelIE
|
|
from .vbox7 import Vbox7IE
|
|
from .veehd import VeeHDIE
|
|
from .veoh import VeohIE
|
|
from .vesti import VestiIE
|
|
from .vevo import VevoIE
|
|
from .vh1 import VH1IE
|
|
from .viddler import ViddlerIE
|
|
from .videobam import VideoBamIE
|
|
from .videodetective import VideoDetectiveIE
|
|
from .videolecturesnet import VideoLecturesNetIE
|
|
from .videofyme import VideofyMeIE
|
|
from .videopremium import VideoPremiumIE
|
|
from .videott import VideoTtIE
|
|
from .videoweed import VideoWeedIE
|
|
from .vimeo import (
|
|
VimeoIE,
|
|
VimeoChannelIE,
|
|
VimeoUserIE,
|
|
VimeoAlbumIE,
|
|
VimeoGroupsIE,
|
|
VimeoReviewIE,
|
|
VimeoWatchLaterIE,
|
|
)
|
|
from .vine import (
|
|
VineIE,
|
|
VineUserIE,
|
|
)
|
|
from .viki import VikiIE
|
|
from .vk import VKIE
|
|
from .vube import VubeIE
|
|
from .vuclip import VuClipIE
|
|
from .vulture import VultureIE
|
|
from .washingtonpost import WashingtonPostIE
|
|
from .wat import WatIE
|
|
from .wdr import (
|
|
WDRIE,
|
|
WDRMobileIE,
|
|
WDRMausIE,
|
|
)
|
|
from .weibo import WeiboIE
|
|
from .wimp import WimpIE
|
|
from .wistia import WistiaIE
|
|
from .worldstarhiphop import WorldStarHipHopIE
|
|
from .wrzuta import WrzutaIE
|
|
from .xbef import XBefIE
|
|
from .xhamster import XHamsterIE
|
|
from .xnxx import XNXXIE
|
|
from .xvideos import XVideosIE
|
|
from .xtube import XTubeUserIE, XTubeIE
|
|
from .yahoo import (
|
|
YahooIE,
|
|
YahooNewsIE,
|
|
YahooSearchIE,
|
|
)
|
|
from .youjizz import YouJizzIE
|
|
from .youku import YoukuIE
|
|
from .youporn import YouPornIE
|
|
from .youtube import (
|
|
YoutubeIE,
|
|
YoutubeChannelIE,
|
|
YoutubeFavouritesIE,
|
|
YoutubeHistoryIE,
|
|
YoutubePlaylistIE,
|
|
YoutubeRecommendedIE,
|
|
YoutubeSearchDateIE,
|
|
YoutubeSearchIE,
|
|
YoutubeSearchURLIE,
|
|
YoutubeShowIE,
|
|
YoutubeSubscriptionsIE,
|
|
YoutubeTopListIE,
|
|
YoutubeTruncatedURLIE,
|
|
YoutubeUserIE,
|
|
YoutubeWatchLaterIE,
|
|
)
|
|
from .zdf import ZDFIE
|
|
|
|
|
|
_ALL_CLASSES = [
|
|
klass
|
|
for name, klass in globals().items()
|
|
if name.endswith('IE') and name != 'GenericIE'
|
|
]
|
|
_ALL_CLASSES.append(GenericIE)
|
|
|
|
|
|
def gen_extractors():
|
|
""" Return a list of an instance of every supported extractor.
|
|
The order does matter; the first extractor matched is the one handling the URL.
|
|
"""
|
|
return [klass() for klass in _ALL_CLASSES]
|
|
|
|
|
|
def get_info_extractor(ie_name):
|
|
"""Returns the info extractor class with the given ie_name"""
|
|
return globals()[ie_name+'IE']
|