mirror of
https://github.com/ytdl-org/youtube-dl
synced 2024-12-21 08:56:52 +00:00
fcea44c6d5
Since the regexp is already overboarding and review pages have a distinct URL format (with non-trivial stuff after the ID), use a dedicated IE. Fixes #2106
262 lines
7.1 KiB
Python
262 lines
7.1 KiB
Python
from .academicearth import AcademicEarthCourseIE
|
|
from .addanime import AddAnimeIE
|
|
from .anitube import AnitubeIE
|
|
from .aparat import AparatIE
|
|
from .appletrailers import AppleTrailersIE
|
|
from .archiveorg import ArchiveOrgIE
|
|
from .ard import ARDIE
|
|
from .arte import (
|
|
ArteTvIE,
|
|
ArteTVPlus7IE,
|
|
ArteTVCreativeIE,
|
|
ArteTVFutureIE,
|
|
ArteTVDDCIE,
|
|
)
|
|
from .auengine import AUEngineIE
|
|
from .bambuser import BambuserIE, BambuserChannelIE
|
|
from .bandcamp import BandcampIE, BandcampAlbumIE
|
|
from .blinkx import BlinkxIE
|
|
from .bliptv import BlipTVIE, BlipTVUserIE
|
|
from .bloomberg import BloombergIE
|
|
from .breakcom import BreakIE
|
|
from .brightcove import BrightcoveIE
|
|
from .c56 import C56IE
|
|
from .canalplus import CanalplusIE
|
|
from .canalc2 import Canalc2IE
|
|
from .cbs import CBSIE
|
|
from .channel9 import Channel9IE
|
|
from .cinemassacre import CinemassacreIE
|
|
from .clipfish import ClipfishIE
|
|
from .clipsyndicate import ClipsyndicateIE
|
|
from .cmt import CMTIE
|
|
from .cnn import CNNIE
|
|
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 .depositfiles import DepositFilesIE
|
|
from .dotsub import DotsubIE
|
|
from .dreisat import DreiSatIE
|
|
from .defense import DefenseGouvFrIE
|
|
from .ebaumsworld import EbaumsWorldIE
|
|
from .ehow import EHowIE
|
|
from .eighttracks import EightTracksIE
|
|
from .eitb import EitbIE
|
|
from .escapist import EscapistIE
|
|
from .exfm import ExfmIE
|
|
from .extremetube import ExtremeTubeIE
|
|
from .facebook import FacebookIE
|
|
from .faz import FazIE
|
|
from .fktv import (
|
|
FKTVIE,
|
|
FKTVPosteckeIE,
|
|
)
|
|
from .flickr import FlickrIE
|
|
from .francetv import (
|
|
PluzzIE,
|
|
FranceTvInfoIE,
|
|
FranceTVIE,
|
|
GenerationQuoiIE
|
|
)
|
|
from .freesound import FreesoundIE
|
|
from .funnyordie import FunnyOrDieIE
|
|
from .gamekings import GamekingsIE
|
|
from .gamespot import GameSpotIE
|
|
from .gametrailers import GametrailersIE
|
|
from .generic import GenericIE
|
|
from .googleplus import GooglePlusIE
|
|
from .googlesearch import GoogleSearchIE
|
|
from .hark import HarkIE
|
|
from .hotnewhiphop import HotNewHipHopIE
|
|
from .howcast import HowcastIE
|
|
from .hypem import HypemIE
|
|
from .ign import IGNIE, OneUPIE
|
|
from .imdb import (
|
|
ImdbIE,
|
|
ImdbListIE
|
|
)
|
|
from .ina import InaIE
|
|
from .infoq import InfoQIE
|
|
from .instagram import InstagramIE
|
|
from .internetvideoarchive import InternetVideoArchiveIE
|
|
from .ivi import (
|
|
IviIE,
|
|
IviCompilationIE
|
|
)
|
|
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 .kickstarter import KickStarterIE
|
|
from .keek import KeekIE
|
|
from .liveleak import LiveLeakIE
|
|
from .livestream import LivestreamIE, LivestreamOriginalIE
|
|
from .lynda import (
|
|
LyndaIE,
|
|
LyndaCourseIE
|
|
)
|
|
from .macgamestore import MacGameStoreIE
|
|
from .mdr import MDRIE
|
|
from .metacafe import MetacafeIE
|
|
from .metacritic import MetacriticIE
|
|
from .mit import TechTVMITIE, MITIE
|
|
from .mixcloud import MixcloudIE
|
|
from .mofosex import MofosexIE
|
|
from .mtv import MTVIE
|
|
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 NBCNewsIE
|
|
from .ndtv import NDTVIE
|
|
from .newgrounds import NewgroundsIE
|
|
from .nhl import NHLIE, NHLVideocenterIE
|
|
from .niconico import NiconicoIE
|
|
from .ninegag import NineGagIE
|
|
from .nowvideo import NowVideoIE
|
|
from .ooyala import OoyalaIE
|
|
from .orf import ORFIE
|
|
from .pbs import PBSIE
|
|
from .photobucket import PhotobucketIE
|
|
from .podomatic import PodomaticIE
|
|
from .pornhd import PornHdIE
|
|
from .pornhub import PornHubIE
|
|
from .pornotube import PornotubeIE
|
|
from .pyvideo import PyvideoIE
|
|
from .radiofrance import RadioFranceIE
|
|
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 .rtlnow import RTLnowIE
|
|
from .rutube import RutubeIE
|
|
from .sina import SinaIE
|
|
from .slashdot import SlashdotIE
|
|
from .slideshare import SlideshareIE
|
|
from .smotri import (
|
|
SmotriIE,
|
|
SmotriCommunityIE,
|
|
SmotriUserIE,
|
|
SmotriBroadcastIE,
|
|
)
|
|
from .sohu import SohuIE
|
|
from .soundcloud import SoundcloudIE, SoundcloudSetIE, SoundcloudUserIE
|
|
from .southparkstudios import (
|
|
SouthParkStudiosIE,
|
|
SouthparkDeIE,
|
|
)
|
|
from .space import SpaceIE
|
|
from .spankwire import SpankwireIE
|
|
from .spiegel import SpiegelIE
|
|
from .stanfordoc import StanfordOpenClassroomIE
|
|
from .statigram import StatigramIE
|
|
from .steam import SteamIE
|
|
from .streamcloud import StreamcloudIE
|
|
from .sztvhu import SztvHuIE
|
|
from .teamcoco import TeamcocoIE
|
|
from .techtalks import TechTalksIE
|
|
from .ted import TEDIE
|
|
from .tf1 import TF1IE
|
|
from .theplatform import ThePlatformIE
|
|
from .thisav import ThisAVIE
|
|
from .toutv import TouTvIE
|
|
from .traileraddict import TrailerAddictIE
|
|
from .trilulilu import TriluliluIE
|
|
from .tube8 import Tube8IE
|
|
from .tudou import TudouIE
|
|
from .tumblr import TumblrIE
|
|
from .tutv import TutvIE
|
|
from .tvp import TvpIE
|
|
from .unistra import UnistraIE
|
|
from .ustream import UstreamIE, UstreamChannelIE
|
|
from .vbox7 import Vbox7IE
|
|
from .veehd import VeeHDIE
|
|
from .veoh import VeohIE
|
|
from .vevo import VevoIE
|
|
from .vice import ViceIE
|
|
from .viddler import ViddlerIE
|
|
from .videodetective import VideoDetectiveIE
|
|
from .videofyme import VideofyMeIE
|
|
from .videopremium import VideoPremiumIE
|
|
from .vimeo import (
|
|
VimeoIE,
|
|
VimeoChannelIE,
|
|
VimeoUserIE,
|
|
VimeoAlbumIE,
|
|
VimeoGroupsIE,
|
|
VimeoReviewIE,
|
|
)
|
|
from .vine import VineIE
|
|
from .viki import VikiIE
|
|
from .vk import VKIE
|
|
from .wat import WatIE
|
|
from .websurg import WeBSurgIE
|
|
from .weibo import WeiboIE
|
|
from .wimp import WimpIE
|
|
from .wistia import WistiaIE
|
|
from .worldstarhiphop import WorldStarHipHopIE
|
|
from .xhamster import XHamsterIE
|
|
from .xnxx import XNXXIE
|
|
from .xvideos import XVideosIE
|
|
from .xtube import 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,
|
|
YoutubeSearchDateIE,
|
|
YoutubeUserIE,
|
|
YoutubeChannelIE,
|
|
YoutubeShowIE,
|
|
YoutubeSubscriptionsIE,
|
|
YoutubeRecommendedIE,
|
|
YoutubeTruncatedURLIE,
|
|
YoutubeWatchLaterIE,
|
|
YoutubeFavouritesIE,
|
|
YoutubeHistoryIE,
|
|
YoutubeTopListIE,
|
|
)
|
|
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']
|