Merge remote-tracking branch 'origin/master'

This commit is contained in:
Philipp Hagemeister 2014-01-01 10:43:58 +01:00
commit 33ec2ae8d9
5 changed files with 25 additions and 3 deletions

View file

@ -165,6 +165,8 @@ class YoutubeDL(object):
def __init__(self, params=None): def __init__(self, params=None):
"""Create a FileDownloader object with the given options.""" """Create a FileDownloader object with the given options."""
if params is None:
params = {}
self._ies = [] self._ies = []
self._ies_instances = {} self._ies_instances = {}
self._pps = [] self._pps = []
@ -173,7 +175,7 @@ class YoutubeDL(object):
self._num_downloads = 0 self._num_downloads = 0
self._screen_file = [sys.stdout, sys.stderr][params.get('logtostderr', False)] self._screen_file = [sys.stdout, sys.stderr][params.get('logtostderr', False)]
self._err_file = sys.stderr self._err_file = sys.stderr
self.params = {} if params is None else params self.params = params
if params.get('bidi_workaround', False): if params.get('bidi_workaround', False):
try: try:

View file

@ -133,7 +133,7 @@ class HttpFD(FileDownloader):
return False return False
try: try:
stream.write(data_block) stream.write(data_block)
except (IOError, OSError): except (IOError, OSError) as err:
self.to_stderr(u"\n") self.to_stderr(u"\n")
self.report_error(u'unable to write data: %s' % str(err)) self.report_error(u'unable to write data: %s' % str(err))
return False return False

View file

@ -28,6 +28,7 @@ from .channel9 import Channel9IE
from .cinemassacre import CinemassacreIE from .cinemassacre import CinemassacreIE
from .clipfish import ClipfishIE from .clipfish import ClipfishIE
from .clipsyndicate import ClipsyndicateIE from .clipsyndicate import ClipsyndicateIE
from .cmt import CMTIE
from .cnn import CNNIE from .cnn import CNNIE
from .collegehumor import CollegeHumorIE from .collegehumor import CollegeHumorIE
from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE from .comedycentral import ComedyCentralIE, ComedyCentralShowsIE

View file

@ -0,0 +1,19 @@
from .mtv import MTVIE
class CMTIE(MTVIE):
IE_NAME = u'cmt.com'
_VALID_URL = r'https?://www\.cmt\.com/videos/.+?/(?P<videoid>[^/]+)\.jhtml'
_FEED_URL = 'http://www.cmt.com/sitewide/apps/player/embed/rss/'
_TESTS = [
{
u'url': u'http://www.cmt.com/videos/garth-brooks/989124/the-call-featuring-trisha-yearwood.jhtml#artist=30061',
u'md5': u'e6b7ef3c4c45bbfae88061799bbba6c2',
u'info_dict': {
u'id': u'989124',
u'ext': u'mp4',
u'title': u'Garth Brooks - "The Call (featuring Trisha Yearwood)"',
u'description': u'Blame It All On My Roots',
},
},
]

View file

@ -129,7 +129,7 @@ class MTVIE(MTVServicesInfoExtractor):
def _real_extract(self, url): def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url) mobj = re.match(self._VALID_URL, url)
video_id = mobj.group('videoid') video_id = mobj.group('videoid')
uri = mobj.group('mgid') uri = mobj.groupdict().get('mgid')
if uri is None: if uri is None:
webpage = self._download_webpage(url, video_id) webpage = self._download_webpage(url, video_id)