You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
1.2 KiB
34 lines
1.2 KiB
class ScraperException(Exception):
|
|
def __init__(self, message, original_exception=None):
|
|
super().__init__(message)
|
|
self.original_exception = original_exception
|
|
|
|
|
|
class NetworkException(ScraperException):
|
|
def __init__(self, message, status_code=None, original_exception=None):
|
|
super().__init__(message, original_exception)
|
|
self.status_code = status_code
|
|
|
|
|
|
class ParseException(ScraperException):
|
|
def __init__(self, message, selector=None, original_exception=None):
|
|
super().__init__(message, original_exception)
|
|
self.selector = selector
|
|
|
|
|
|
class ValidationException(ScraperException):
|
|
def __init__(self, message, field=None, original_exception=None):
|
|
super().__init__(message, original_exception)
|
|
self.field = field
|
|
|
|
|
|
class StorageException(ScraperException):
|
|
def __init__(self, message, file_path=None, original_exception=None):
|
|
super().__init__(message, original_exception)
|
|
self.file_path = file_path
|
|
|
|
|
|
class StrategyException(ScraperException):
|
|
def __init__(self, message, strategy_name=None, original_exception=None):
|
|
super().__init__(message, original_exception)
|
|
self.strategy_name = strategy_name
|
|
|