Merge remote-tracking branch 'lenaten/karaoketv'
authorPhilipp Hagemeister <phihag@phihag.de>
Sat, 10 Jan 2015 16:59:35 +0000 (17:59 +0100)
committerPhilipp Hagemeister <phihag@phihag.de>
Sat, 10 Jan 2015 16:59:35 +0000 (17:59 +0100)
1  2 
youtube_dl/extractor/__init__.py

index fc83a7d07faf9d60dda75e268eef6f34fd5e4103,d12e741a0bd836858d8db31ddf0b32c13bfd9e2d..647e0a8c2fc5f0da5c3a9cc2ee49c6b6c6643f39
@@@ -1,13 -1,8 +1,13 @@@
 +from __future__ import unicode_literals
 +
  from .abc import ABCIE
  from .academicearth import AcademicEarthCourseIE
  from .addanime import AddAnimeIE
 +from .adobetv import AdobeTVIE
  from .adultswim import AdultSwimIE
  from .aftonbladet import AftonbladetIE
 +from .aljazeera import AlJazeeraIE
 +from .alphaporno import AlphaPornoIE
  from .anitube import AnitubeIE
  from .anysex import AnySexIE
  from .aol import AolIE
@@@ -25,27 -20,19 +25,27 @@@ from .arte import 
      ArteTVDDCIE,
      ArteTVEmbedIE,
  )
 +from .atresplayer import AtresPlayerIE
 +from .atttechchannel import ATTTechChannelIE
 +from .audiomack import AudiomackIE, AudiomackAlbumIE
  from .auengine import AUEngineIE
 +from .azubu import AzubuIE
  from .bambuser import BambuserIE, BambuserChannelIE
  from .bandcamp import BandcampIE, BandcampAlbumIE
  from .bbccouk import BBCCoUkIE
  from .beeg import BeegIE
  from .behindkink import BehindKinkIE
 +from .bet import BetIE
 +from .bild import BildIE
  from .bilibili import BiliBiliIE
  from .blinkx import BlinkxIE
  from .bliptv import BlipTVIE, BlipTVUserIE
  from .bloomberg import BloombergIE
 +from .bpb import BpbIE
  from .br import BRIE
  from .breakcom import BreakIE
  from .brightcove import BrightcoveIE
 +from .buzzfeed import BuzzFeedIE
  from .byutv import BYUtvIE
  from .c56 import C56IE
  from .canal13cl import Canal13clIE
@@@ -56,7 -43,7 +56,7 @@@ from .cbsnews import CBSNewsI
  from .ceskatelevize import CeskaTelevizeIE
  from .channel9 import Channel9IE
  from .chilloutzone import ChilloutzoneIE
 -from .cinemassacre import CinemassacreIE
 +from .cinchcast import CinchcastIE
  from .clipfish import ClipfishIE
  from .cliphunter import CliphunterIE
  from .clipsyndicate import ClipsyndicateIE
@@@ -67,20 -54,15 +67,20 @@@ from .cnet import CNETI
  from .cnn import (
      CNNIE,
      CNNBlogsIE,
 +    CNNArticleIE,
  )
  from .collegehumor import CollegeHumorIE
  from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE
 +from .comcarcoff import ComCarCoffIE
 +from .commonmistakes import CommonMistakesIE
  from .condenast import CondeNastIE
  from .cracked import CrackedIE
  from .criterion import CriterionIE
 -from .crunchyroll import CrunchyrollIE
 +from .crunchyroll import (
 +    CrunchyrollIE,
 +    CrunchyrollShowPlaylistIE
 +)
  from .cspan import CSpanIE
 -from .d8 import D8IE
  from .dailymotion import (
      DailymotionIE,
      DailymotionPlaylistIE,
@@@ -94,14 -76,12 +94,14 @@@ from .dotsub import DotsubI
  from .dreisat import DreiSatIE
  from .drtuber import DrTuberIE
  from .drtv import DRTVIE
 +from .dvtv import DVTVIE
  from .dump import DumpIE
  from .defense import DefenseGouvFrIE
  from .discovery import DiscoveryIE
  from .divxstage import DivxStageIE
  from .dropbox import DropboxIE
  from .ebaumsworld import EbaumsWorldIE
 +from .echomsk import EchoMskIE
  from .ehow import EHowIE
  from .eighttracks import EightTracksIE
  from .einthusan import EinthusanIE
@@@ -114,7 -94,6 +114,7 @@@ from .elpais import ElPaisI
  from .empflix import EMPFlixIE
  from .engadget import EngadgetIE
  from .eporner import EpornerIE
 +from .eroprofile import EroProfileIE
  from .escapist import EscapistIE
  from .everyonesmixtape import EveryonesMixtapeIE
  from .exfm import ExfmIE
@@@ -132,10 -111,7 +132,10 @@@ from .fktv import 
      FKTVPosteckeIE,
  )
  from .flickr import FlickrIE
 +from .folketinget import FolketingetIE
  from .fourtube import FourTubeIE
 +from .foxgay import FoxgayIE
 +from .foxnews import FoxNewsIE
  from .franceculture import FranceCultureIE
  from .franceinter import FranceInterIE
  from .francetv import (
  )
  from .freesound import FreesoundIE
  from .freespeech import FreespeechIE
 +from .freevideo import FreeVideoIE
  from .funnyordie import FunnyOrDieIE
  from .gamekings import GamekingsIE
  from .gameone import (
@@@ -159,25 -134,15 +159,25 @@@ from .gamestar import GameStarI
  from .gametrailers import GametrailersIE
  from .gdcvault import GDCVaultIE
  from .generic import GenericIE
 +from .giantbomb import GiantBombIE
 +from .giga import GigaIE
 +from .glide import GlideIE
 +from .globo import GloboIE
  from .godtube import GodTubeIE
 +from .goldenmoustache import GoldenMoustacheIE
 +from .golem import GolemIE
  from .googleplus import GooglePlusIE
  from .googlesearch import GoogleSearchIE
  from .gorillavid import GorillaVidIE
  from .goshgay import GoshgayIE
  from .grooveshark import GroovesharkIE
 +from .groupon import GrouponIE
  from .hark import HarkIE
 +from .heise import HeiseIE
 +from .hellporno import HellPornoIE
  from .helsinki import HelsinkiIE
  from .hentaistigma import HentaiStigmaIE
 +from .hitbox import HitboxIE, HitboxLiveIE
  from .hornbunny import HornBunnyIE
  from .hostingbulk import HostingBulkIE
  from .hotnewhiphop import HotNewHipHopIE
@@@ -205,8 -170,10 +205,9 @@@ from .jadorecettepub import JadoreCette
  from .jeuxvideo import JeuxVideoIE
  from .jove import JoveIE
  from .jukebox import JukeboxIE
 -from .justintv import JustinTVIE
  from .jpopsukitv import JpopsukiIE
  from .kankan import KankanIE
+ from .karaoketv import KaraoketvIE
  from .keezmovies import KeezMoviesIE
  from .khanacademy import KhanAcademyIE
  from .kickstarter import KickStarterIE
@@@ -215,7 -182,6 +216,7 @@@ from .kontrtube import KontrTubeI
  from .krasview import KrasViewIE
  from .ku6 import Ku6IE
  from .la7 import LA7IE
 +from .laola1tv import Laola1TvIE
  from .lifenews import LifeNewsIE
  from .liveleak import LiveLeakIE
  from .livestream import (
      LivestreamOriginalIE,
      LivestreamShortenerIE,
  )
 +from .lrt import LRTIE
  from .lynda import (
      LyndaIE,
      LyndaCourseIE
@@@ -236,7 -201,6 +237,7 @@@ from .mdr import MDRI
  from .metacafe import MetacafeIE
  from .metacritic import MetacriticIE
  from .mgoon import MgoonIE
 +from .minhateca import MinhatecaIE
  from .ministrygrid import MinistryGridIE
  from .mit import TechTVMITIE, MITIE, OCWMITIE
  from .mitele import MiTeleIE
@@@ -263,10 -227,9 +264,10 @@@ from .muenchentv import MuenchenTVI
  from .musicplayon import MusicPlayOnIE
  from .musicvault import MusicVaultIE
  from .muzu import MuzuTVIE
 -from .myspace import MySpaceIE
 +from .myspace import MySpaceIE, MySpaceAlbumIE
  from .myspass import MySpassIE
  from .myvideo import MyVideoIE
 +from .myvidster import MyVidsterIE
  from .naver import NaverIE
  from .nba import NBAIE
  from .nbc import (
  )
  from .ndr import NDRIE
  from .ndtv import NDTVIE
 +from .netzkino import NetzkinoIE
 +from .nerdcubed import NerdCubedFeedIE
  from .newgrounds import NewgroundsIE
  from .newstube import NewstubeIE
  from .nfb import NFBIE
  from .nfl import NFLIE
  from .nhl import NHLIE, NHLVideocenterIE
 -from .niconico import NiconicoIE
 +from .niconico import NiconicoIE, NiconicoPlaylistIE
  from .ninegag import NineGagIE
  from .noco import NocoIE
  from .normalboots import NormalbootsIE
@@@ -301,9 -262,7 +302,9 @@@ from .nrk import 
  from .ntv import NTVIE
  from .nytimes import NYTimesIE
  from .nuvid import NuvidIE
 +from .oktoberfesttv import OktoberfestTVIE
  from .ooyala import OoyalaIE
 +from .openfilm import OpenFilmIE
  from .orf import (
      ORFTVthekIE,
      ORFOE1IE,
  from .parliamentliveuk import ParliamentLiveUKIE
  from .patreon import PatreonIE
  from .pbs import PBSIE
 +from .phoenix import PhoenixIE
  from .photobucket import PhotobucketIE
 +from .planetaplay import PlanetaPlayIE
 +from .played import PlayedIE
  from .playfm import PlayFMIE
  from .playvid import PlayvidIE
  from .podomatic import PodomaticIE
@@@ -326,31 -282,24 +327,31 @@@ from .pornoxo import PornoXOI
  from .promptfile import PromptFileIE
  from .prosiebensat1 import ProSiebenSat1IE
  from .pyvideo import PyvideoIE
 +from .quickvid import QuickVidIE
 +from .radiode import RadioDeIE
 +from .radiobremen import RadioBremenIE
  from .radiofrance import RadioFranceIE
  from .rai import RaiIE
  from .rbmaradio import RBMARadioIE
  from .redtube import RedTubeIE
 +from .restudy import RestudyIE
  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 .rte import RteIE
  from .rtlnl import RtlXlIE
  from .rtlnow import RTLnowIE
 +from .rtp import RTPIE
  from .rts import RTSIE
  from .rtve import RTVEALaCartaIE, RTVELiveIE
  from .ruhd import RUHDIE
  from .rutube import (
      RutubeIE,
      RutubeChannelIE,
 +    RutubeEmbedIE,
      RutubeMovieIE,
      RutubePersonIE,
  )
@@@ -360,11 -309,7 +361,11 @@@ from .savefrom import SaveFromI
  from .sbs import SBSIE
  from .scivee import SciVeeIE
  from .screencast import ScreencastIE
 +from .screencastomatic import ScreencastOMaticIE
 +from .screenwavemedia import CinemassacreIE, ScreenwaveMediaIE, TeamFourIE
  from .servingsys import ServingSysIE
 +from .sexu import SexuIE
 +from .sexykarma import SexyKarmaIE
  from .shared import SharedIE
  from .sharesix import ShareSixIE
  from .sina import SinaIE
@@@ -396,9 -341,7 +397,9 @@@ from .spiegel import SpiegelIE, Spiegel
  from .spiegeltv import SpiegeltvIE
  from .spike import SpikeIE
  from .sport5 import Sport5IE
 +from .sportbox import SportBoxIE
  from .sportdeutschland import SportDeutschlandIE
 +from .srmediathek import SRMediathekIE
  from .stanfordoc import StanfordOpenClassroomIE
  from .steam import SteamIE
  from .streamcloud import StreamcloudIE
@@@ -408,8 -351,6 +409,8 @@@ from .swrmediathek import SWRMediathekI
  from .syfy import SyfyIE
  from .sztvhu import SztvHuIE
  from .tagesschau import TagesschauIE
 +from .tapely import TapelyIE
 +from .tass import TassIE
  from .teachertube import (
      TeacherTubeIE,
      TeacherTubeUserIE,
@@@ -418,25 -359,16 +419,25 @@@ from .teachingchannel import TeachingCh
  from .teamcoco import TeamcocoIE
  from .techtalks import TechTalksIE
  from .ted import TEDIE
 +from .telebruxelles import TeleBruxellesIE
 +from .telecinco import TelecincoIE
  from .telemb import TeleMBIE
 +from .teletask import TeleTaskIE
  from .tenplay import TenPlayIE
  from .testurl import TestURLIE
  from .tf1 import TF1IE
 +from .theonion import TheOnionIE
  from .theplatform import ThePlatformIE
 +from .thesixtyone import TheSixtyOneIE
  from .thisav import ThisAVIE
  from .tinypic import TinyPicIE
  from .tlc import TlcIE, TlcDeIE
 +from .tmz import TMZIE
  from .tnaflix import TNAFlixIE
 -from .thvideo import THVideoIE
 +from .thvideo import (
 +    THVideoIE,
 +    THVideoPlaylistIE
 +)
  from .toutv import TouTvIE
  from .toypics import ToypicsUserIE, ToypicsIE
  from .traileraddict import TrailerAddictIE
@@@ -445,14 -377,11 +446,14 @@@ from .trutube import TruTubeI
  from .tube8 import Tube8IE
  from .tudou import TudouIE
  from .tumblr import TumblrIE
 +from .tunein import TuneInIE
  from .turbo import TurboIE
  from .tutv import TutvIE
  from .tvigle import TvigleIE
 -from .tvp import TvpIE
 +from .tvp import TvpIE, TvpSeriesIE
  from .tvplay import TVPlayIE
 +from .twentyfourvideo import TwentyFourVideoIE
 +from .twitch import TwitchIE
  from .ubu import UbuIE
  from .udemy import (
      UdemyIE,
@@@ -468,7 -397,6 +469,7 @@@ from .vesti import VestiI
  from .vevo import VevoIE
  from .vgtv import VGTVIE
  from .vh1 import VH1IE
 +from .vice import ViceIE
  from .viddler import ViddlerIE
  from .videobam import VideoBamIE
  from .videodetective import VideoDetectiveIE
@@@ -479,16 -407,13 +480,16 @@@ from .videopremium import VideoPremiumI
  from .videott import VideoTtIE
  from .videoweed import VideoWeedIE
  from .vidme import VidmeIE
 +from .vidzi import VidziIE
 +from .vier import VierIE, VierVideosIE
  from .vimeo import (
      VimeoIE,
 -    VimeoChannelIE,
 -    VimeoUserIE,
      VimeoAlbumIE,
 +    VimeoChannelIE,
      VimeoGroupsIE,
 +    VimeoLikesIE,
      VimeoReviewIE,
 +    VimeoUserIE,
      VimeoWatchLaterIE,
  )
  from .vimple import VimpleIE
@@@ -497,17 -422,12 +498,17 @@@ from .vine import 
      VineUserIE,
  )
  from .viki import VikiIE
 -from .vk import VKIE
 +from .vk import (
 +    VKIE,
 +    VKUserVideosIE,
 +)
  from .vodlocker import VodlockerIE
  from .vporn import VpornIE
 +from .vrt import VRTIE
  from .vube import VubeIE
  from .vuclip import VuClipIE
  from .vulture import VultureIE
 +from .walla import WallaIE
  from .washingtonpost import WashingtonPostIE
  from .wat import WatIE
  from .wayofthemaster import WayOfTheMasterIE
@@@ -516,7 -436,6 +517,7 @@@ from .wdr import 
      WDRMobileIE,
      WDRMausIE,
  )
 +from .webofstories import WebOfStoriesIE
  from .weibo import WeiboIE
  from .wimp import WimpIE
  from .wistia import WistiaIE
@@@ -525,16 -444,14 +526,16 @@@ from .wrzuta import WrzutaI
  from .xbef import XBefIE
  from .xboxclips import XboxClipsIE
  from .xhamster import XHamsterIE
 +from .xminus import XMinusIE
  from .xnxx import XNXXIE
  from .xvideos import XVideosIE
  from .xtube import XTubeUserIE, XTubeIE
 +from .xxxymovies import XXXYMoviesIE
  from .yahoo import (
      YahooIE,
 -    YahooNewsIE,
      YahooSearchIE,
  )
 +from .yesjapan import YesJapanIE
  from .ynet import YnetIE
  from .youjizz import YouJizzIE
  from .youku import YoukuIE
@@@ -552,16 -469,14 +553,16 @@@ from .youtube import 
      YoutubeSearchURLIE,
      YoutubeShowIE,
      YoutubeSubscriptionsIE,
 -    YoutubeTopListIE,
 +    YoutubeTruncatedIDIE,
      YoutubeTruncatedURLIE,
      YoutubeUserIE,
      YoutubeWatchLaterIE,
  )
 -
 -from .zdf import ZDFIE
 -
 +from .zdf import ZDFIE, ZDFChannelIE
 +from .zingmp3 import (
 +    ZingMp3SongIE,
 +    ZingMp3AlbumIE,
 +)
  
  _ALL_CLASSES = [
      klass
@@@ -578,17 -493,6 +579,17 @@@ def gen_extractors()
      return [klass() for klass in _ALL_CLASSES]
  
  
 +def list_extractors(age_limit):
 +    """
 +    Return a list of extractors that are suitable for the given age,
 +    sorted by extractor ID.
 +    """
 +
 +    return sorted(
 +        filter(lambda ie: ie.is_suitable(age_limit), gen_extractors()),
 +        key=lambda ie: ie.IE_NAME.lower())
 +
 +
  def get_info_extractor(ie_name):
      """Returns the info extractor class with the given ie_name"""
 -    return globals()[ie_name+'IE']
 +    return globals()[ie_name + 'IE']