X-Git-Url: https://git.rapsys.eu/youtubedl/blobdiff_plain/df5478464cde9ccd55331acb878209984dbd568b..252064fa082f84e06d1251185428b44c75c59109:/youtube_dl/extractor/__init__.py?ds=inline diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 0ea9908..e49ac3e 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -1,139 +1,418 @@ - +from .academicearth import AcademicEarthCourseIE +from .addanime import AddAnimeIE +from .aftonbladet import AftonbladetIE +from .anitube import AnitubeIE +from .aol import AolIE +from .allocine import AllocineIE +from .aparat import AparatIE +from .appletrailers import AppleTrailersIE +from .archiveorg import ArchiveOrgIE from .ard import ARDIE -from .arte import ArteTvIE -from .bandcamp import BandcampIE +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 -from .dailymotion import DailymotionIE -from .depositfiles import DepositFilesIE +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 .drtv import DRTVIE +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 .firedrive import FiredriveIE +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 .gameone import GameOneIE +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 .goshgay import GoshgayIE +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 .mtv import MTVIE +from .mpora import MporaIE +from .mofosex import MofosexIE +from .mooshare import MooshareIE +from .morningstar import MorningstarIE +from .motherless import MotherlessIE +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 .npo import NPOIE +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 .soundcloud import SoundcloudIE, SoundcloudSetIE +from .reverbnation import ReverbNationIE +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 .ruhd import RUHDIE +from .rutube import ( + RutubeIE, + RutubeChannelIE, + RutubeMovieIE, + RutubePersonIE, +) +from .rutv import RUTVIE +from .savefrom import SaveFromIE +from .scivee import SciVeeIE +from .screencast import ScreencastIE +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 .southpark import ( + SouthParkIE, + 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 .statigram import StatigramIE 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, + TeacherTubeUserIE, +) +from .teachingchannel import TeachingChannelIE from .teamcoco import TeamcocoIE +from .techtalks import TechTalksIE from .ted import TEDIE +from .tenplay import TenPlayIE +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 .ustream import UstreamIE +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 .vimeo import VimeoIE -from .vine import VineIE +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 .vimple import VimpleIE +from .vine import ( + VineIE, + VineUserIE, +) +from .viki import VikiIE +from .vk import VKIE +from .vodlocker import VodlockerIE +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 .yahoo import YahooIE, YahooSearchIE +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, YoutubePlaylistIE, YoutubeSearchIE, YoutubeUserIE, YoutubeChannelIE +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 [ - YoutubePlaylistIE(), - YoutubeChannelIE(), - YoutubeUserIE(), - YoutubeSearchIE(), - YoutubeIE(), - MetacafeIE(), - DailymotionIE(), - GoogleSearchIE(), - PhotobucketIE(), - YahooIE(), - YahooSearchIE(), - DepositFilesIE(), - FacebookIE(), - BlipTVIE(), - BlipTVUserIE(), - VimeoIE(), - MyVideoIE(), - ComedyCentralIE(), - EscapistIE(), - CollegeHumorIE(), - XVideosIE(), - SoundcloudSetIE(), - SoundcloudIE(), - InfoQIE(), - MixcloudIE(), - StanfordOpenClassroomIE(), - MTVIE(), - YoukuIE(), - XNXXIE(), - YouJizzIE(), - PornotubeIE(), - YouPornIE(), - GooglePlusIE(), - ArteTvIE(), - NBAIE(), - WorldStarHipHopIE(), - JustinTVIE(), - FunnyOrDieIE(), - SteamIE(), - UstreamIE(), - RBMARadioIE(), - EightTracksIE(), - KeekIE(), - TEDIE(), - MySpassIE(), - SpiegelIE(), - LiveLeakIE(), - ARDIE(), - ZDFIE(), - TumblrIE(), - BandcampIE(), - RedTubeIE(), - InaIE(), - HowcastIE(), - VineIE(), - FlickrIE(), - TeamcocoIE(), - XHamsterIE(), - HypemIE(), - Vbox7IE(), - GametrailersIE(), - StatigramIE(), - BreakIE(), - VevoIE(), - JukeboxIE(), - TudouIE(), - GenericIE() - ] + return [klass() for klass in _ALL_CLASSES] + def get_info_extractor(ie_name): """Returns the info extractor class with the given ie_name"""