youtube-dl

Another place where youtube-dl lives on
git clone git://git.oshgnacknak.de/youtube-dl.git
Log | Files | Refs | README | LICENSE

commit 2eabb80254f48d63a464247140d8e04a73418ded
parent 44586389e4676dfd926255cf76e36684dcf4742d
Author: Philipp Hagemeister <phihag@phihag.de>
Date:   Wed, 28 Aug 2013 04:25:38 +0200

[addanime] improve

Diffstat:
Myoutube_dl/extractor/__init__.py | 1+
Myoutube_dl/extractor/appletrailers.py | 2+-
Myoutube_dl/extractor/common.py | 2+-
Myoutube_dl/utils.py | 8+++++++-
4 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py @@ -1,4 +1,5 @@ from .appletrailers import AppleTrailersIE +from .addanime import AddAnimeIE from .archiveorg import ArchiveOrgIE from .ard import ARDIE from .arte import ArteTvIE diff --git a/youtube_dl/extractor/appletrailers.py b/youtube_dl/extractor/appletrailers.py @@ -91,7 +91,7 @@ class AppleTrailersIE(InfoExtractor): duration = 60 * int(m.group('minutes')) + int(m.group('seconds')) formats = [] - for formats_el in li.findall('.//li/a'): + for formats_el in li.findall('.//a'): if formats_el.attrib['class'] != 'OverlayPanel': continue target = formats_el.attrib['target'] diff --git a/youtube_dl/extractor/common.py b/youtube_dl/extractor/common.py @@ -129,7 +129,7 @@ class InfoExtractor(object): except (compat_urllib_error.URLError, compat_http_client.HTTPException, socket.error) as err: if errnote is None: errnote = u'Unable to download webpage' - raise ExtractorError(u'%s: %s' % (errnote, compat_str(err)), sys.exc_info()[2]) + raise ExtractorError(u'%s: %s' % (errnote, compat_str(err)), sys.exc_info()[2], cause=err) def _download_webpage_handle(self, url_or_request, video_id, note=None, errnote=None): """ Returns a tuple (page content as string, URL handle) """ diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py @@ -61,6 +61,11 @@ except ImportError: # Python 2 import httplib as compat_http_client try: + from http.error import HTTPError as compat_HTTPError +except ImportError: # Python 2 + from urllib2 import HTTPError as compat_HTTPError + +try: from subprocess import DEVNULL compat_subprocess_get_DEVNULL = lambda: DEVNULL except ImportError: @@ -489,7 +494,7 @@ def make_HTTPS_handler(opts): class ExtractorError(Exception): """Error during info extraction.""" - def __init__(self, msg, tb=None, expected=False): + def __init__(self, msg, tb=None, expected=False, cause=None): """ tb, if given, is the original traceback (so that it can be printed out). If expected is set, this is a normal error message and most likely not a bug in youtube-dl. """ @@ -502,6 +507,7 @@ class ExtractorError(Exception): self.traceback = tb self.exc_info = sys.exc_info() # preserve original exception + self.cause = cause def format_traceback(self): if self.traceback is None: