Я звоню Udemy external api, чтобы создать простой сервис REST для экспериментальных целей.
https://www.udemy.com/developers/affiliate/
Вот мой метод обучения get_all ().
class Courses(object):
"""
Handles all requests related to courses.
ie; gets the courses-list, courses-detail, coursesreviews-list
"""
def __init__(self, api):
self.api = api
logger.debug("courses initialized")
def get_all(self):
page = 1
per_page = 20
while True:
res = self._get_courses(page, per_page)
if not res['results']:
break
try:
for one in res['results']:
yield one
except Exception as e: -->>>handling exception
print(e)
break
page += 1
def _get_courses_detail(self, page, per_page):
resource = "courses"
params = {'page': page, 'per_page': per_page,
# 'fields[course]': '@all'
}
res = self.api.get(resource, params)
return res
Теперь, разумно ли обрабатывать исключение (в методе get_all ()), предполагая, что в возвращаемых данных API может быть какая-то ошибка?
Или обработка исключения (в get_all) не требуетсяздесь, и это должно быть обработано вызывающей функцией?
Большинство проектов с открытым исходным кодом, которые я вижу, не обрабатывают это исключение.