diff options
author | Yen Chi Hsuan <yan12125@gmail.com> | 2017-12-24 20:47:42 +0800 |
---|---|---|
committer | Yen Chi Hsuan <yan12125@gmail.com> | 2017-12-24 20:47:42 +0800 |
commit | a75419586bb900df711de49adf5047afa9f083ef (patch) | |
tree | e684ff79b4968a1adc6047f32b22621208b6fba8 | |
parent | 273c23d960cbd2da18fadaef002473db41b5f56b (diff) | |
download | youtube-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.py | 5 |
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): |