Я работаю над получением деталей для списка фильмов из IMDB, используя библиотеку Imdbpy
.Однако я не могу обработать сгенерированное исключение.
Может кто-нибудь сообщить мне, где я иду не так?
Вот код:
from imdb import IMDb
ia = IMDb()
from_id = 650
to_id = from_id +5
for i in range(from_id,to_id):
try:
movie_id = ia.get_movie(i)
title = movie_id['title']
release_year = movie_id['year']
kind = movie_id['kind']
movieid = movie_id.movieID
print ("here", title,kind,movieid)
except:
pass
Я не хочу ничего делать, когда возникает исключение.Я хочу это просто пропустить.Я даже попробовал except Exception as e
.Это не помогло, хотя.Это все еще выдает ошибку.
Вот ошибка:
2019-03-21 15:00:24,230 CRITICAL [imdbpy] C:\Python36x64\lib\site-packages\imdb\_exceptions.py:34: IMDbDataAccessError exception raised; args: ({'errcode': None, 'errmsg': 'None', 'url': 'http://www.imdb.com/title/tt0000652/reference', 'proxy': '', 'exception type': 'IOError', 'original exception': <HTTPError 404: 'Not Found'>},); kwds: {}
Traceback (most recent call last):
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 231, in retrieve_unicode
response = uopener.open(url)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 564, in error
result = self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 756, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 570, in error
return self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 650, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found
2019-03-21 15:00:24,237 CRITICAL [imdbpy] C:\Python36x64\lib\site-packages\imdb\__init__.py:714: caught an exception retrieving or parsing "main" info set for mopID "0000652" (accessSystem: http)
Traceback (most recent call last):
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 231, in retrieve_unicode
response = uopener.open(url)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 564, in error
result = self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 756, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 570, in error
return self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 650, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Python36x64\lib\site-packages\imdb\__init__.py", line 709, in update
ret = method(mopID)
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 446, in get_movie_main
cont = self._retrieve(self.urls['movie_main'] % movieID + 'reference')
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 406, in _retrieve
ret = self.urlOpener.retrieve_unicode(url, size=size)
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 265, in retrieve_unicode
'original exception': e}
imdb._exceptions.IMDbDataAccessError: {'errcode': None, 'errmsg': 'None', 'url': 'http://www.imdb.com/title/tt0000652/reference', 'proxy': '', 'exception type': 'IOError', 'original exception': <HTTPError 404: 'Not Found'>}
2019-03-21 15:00:25,253 CRITICAL [imdbpy] C:\Python36x64\lib\site-packages\imdb\_exceptions.py:34: IMDbDataAccessError exception raised; args: ({'errcode': None, 'errmsg': 'None', 'url': 'http://www.imdb.com/title/tt0000652/plotsummary', 'proxy': '', 'exception type': 'IOError', 'original exception': <HTTPError 404: 'Not Found'>},); kwds: {}
Traceback (most recent call last):
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 231, in retrieve_unicode
response = uopener.open(url)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 564, in error
result = self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 756, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 570, in error
return self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 650, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found
2019-03-21 15:00:25,254 CRITICAL [imdbpy] C:\Python36x64\lib\site-packages\imdb\__init__.py:714: caught an exception retrieving or parsing "plot" info set for mopID "0000652" (accessSystem: http)
Traceback (most recent call last):
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 231, in retrieve_unicode
response = uopener.open(url)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 564, in error
result = self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 756, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "C:\Python36x64\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Python36x64\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python36x64\lib\urllib\request.py", line 570, in error
return self._call_chain(*args)
File "C:\Python36x64\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Python36x64\lib\urllib\request.py", line 650, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Python36x64\lib\site-packages\imdb\__init__.py", line 709, in update
ret = method(mopID)
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 454, in get_movie_plot
cont = self._retrieve(self.urls['movie_main'] % movieID + 'plotsummary')
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 406, in _retrieve
ret = self.urlOpener.retrieve_unicode(url, size=size)
File "C:\Python36x64\lib\site-packages\imdb\parser\http\__init__.py", line 265, in retrieve_unicode
'original exception': e}
imdb._exceptions.IMDbDataAccessError: {'errcode': None, 'errmsg': 'None', 'url': 'http://www.imdb.com/title/tt0000652/plotsummary', 'proxy': '', 'exception type': 'IOError', 'original exception': <HTTPError 404: 'Not Found'>}
Я получаю ошибку для id = 652 .Кто-нибудь, пожалуйста, помогите мне разобраться в этом.