aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYen Chi Hsuan <yan12125@gmail.com>2017-12-24 20:47:42 +0800
committerYen Chi Hsuan <yan12125@gmail.com>2017-12-24 20:47:42 +0800
commita75419586bb900df711de49adf5047afa9f083ef (patch)
treee684ff79b4968a1adc6047f32b22621208b6fba8
parent273c23d960cbd2da18fadaef002473db41b5f56b (diff)
downloadyoutube-dl-a75419586bb900df711de49adf5047afa9f083ef.zip
youtube-dl-a75419586bb900df711de49adf5047afa9f083ef.tar.gz
youtube-dl-a75419586bb900df711de49adf5047afa9f083ef.tar.bz2
[openload] Remove a confusing exception
If phantomjs is not installed, there's an error besides the missing phantomjs exception: Exception ignored in: <bound method PhantomJSwrapper.__del__ of <youtube_dl.extractor.openload.PhantomJSwrapper object at 0x7f8ad5e78278>> Traceback (most recent call last): File "/home/yen/Projects/youtube-dl/youtube_dl/extractor/openload.py", line 142, in __del__ os.remove(self._TMP_FILES[name].name) AttributeError: 'PhantomJSwrapper' object has no attribute '_TMP_FILES'
-rw-r--r--youtube_dl/extractor/openload.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/youtube_dl/extractor/openload.py b/youtube_dl/extractor/openload.py
index aed579f..d1eb3be 100644
--- a/youtube_dl/extractor/openload.py
+++ b/youtube_dl/extractor/openload.py
@@ -112,6 +112,8 @@ class PhantomJSwrapper(object):
return get_exe_version('phantomjs', version_re=r'([0-9.]+)')
def __init__(self, extractor, required_version=None, timeout=10000):
+ self._TMP_FILES = {}
+
self.exe = check_executable('phantomjs', ['-v'])
if not self.exe:
raise ExtractorError('PhantomJS executable not found in PATH, '
@@ -130,7 +132,6 @@ class PhantomJSwrapper(object):
self.options = {
'timeout': timeout,
}
- self._TMP_FILES = {}
for name in self._TMP_FILE_NAMES:
tmp = tempfile.NamedTemporaryFile(delete=False)
tmp.close()
@@ -140,7 +141,7 @@ class PhantomJSwrapper(object):
for name in self._TMP_FILE_NAMES:
try:
os.remove(self._TMP_FILES[name].name)
- except (IOError, OSError):
+ except (IOError, OSError, KeyError):
pass
def _save_cookies(self, url):