Spaces:
Running on Zero
Running on Zero
Download exception.py from donotthink/meme: direct link, hf CLI and curl.
- Browser
- Download file 2.84 kB
-
https://huggingface.co/spaces/donotthink/meme/resolve/main/exception.py
- Command line
-
hf download hf://spaces/donotthink/meme/exception.py
-
curl -L -o exception.py https://huggingface.co/spaces/donotthink/meme/resolve/main/exception.py
2.84 kB
| from typing import Optional | |
| class MemeGeneratorException(Exception): | |
| status_code: int = 520 | |
| def __init__(self, message: str): | |
| self.message = message | |
| def __str__(self) -> str: | |
| return self.__repr__() | |
| def __repr__(self) -> str: | |
| return f"表情制作出错!{self.message}" | |
| class NoSuchMeme(MemeGeneratorException): | |
| status_code: int = 531 | |
| def __init__(self, meme_key: str): | |
| self.meme_key = meme_key | |
| message = f"表情“{self.meme_key}”不存在" | |
| super().__init__(message) | |
| class TextOverLength(MemeGeneratorException): | |
| status_code: int = 532 | |
| def __init__(self, text: str): | |
| self.text = text | |
| repr = text if len(text) <= 10 else (text[:10] + "...") | |
| message = f"文本“{repr}”过长" | |
| super().__init__(message) | |
| class OpenImageFailed(MemeGeneratorException): | |
| status_code: int = 533 | |
| def __init__(self, error_message: str): | |
| self.error_message = error_message | |
| message = f"图片加载失败({self.error_message})" | |
| super().__init__(message) | |
| class ParamsMismatch(MemeGeneratorException): | |
| status_code: int = 540 | |
| class ImageNumberMismatch(ParamsMismatch): | |
| status_code: int = 541 | |
| def __init__(self, min_images: int = 0, max_images: int = 0): | |
| self.min_images = min_images | |
| self.max_images = max_images | |
| message = f"图片数量不符,图片数量应为 {min_images}" + ( | |
| f" ~ {max_images}" if max_images > min_images else "" | |
| ) | |
| super().__init__(message) | |
| class TextNumberMismatch(ParamsMismatch): | |
| status_code: int = 542 | |
| def __init__(self, min_texts: int = 0, max_texts: int = 0): | |
| self.min_texts = min_texts | |
| self.max_texts = max_texts | |
| message = f"文本数量不符,文本数量应为 {min_texts}" + ( | |
| f" ~ {max_texts}" if max_texts > min_texts else "" | |
| ) | |
| super().__init__(message) | |
| class TextOrNameNotEnough(ParamsMismatch): | |
| status_code: int = 543 | |
| def __init__(self, message: Optional[str] = None): | |
| message = message or "文本或用户名数量不足" | |
| super().__init__(message) | |
| class ArgMismatch(ParamsMismatch): | |
| status_code: int = 550 | |
| class ArgParserMismatch(ArgMismatch): | |
| status_code: int = 551 | |
| def __init__(self, error_message: str): | |
| self.error_message = error_message | |
| message = f"参数解析失败({self.error_message})" | |
| super().__init__(message) | |
| class ArgModelMismatch(ArgMismatch): | |
| status_code: int = 552 | |
| def __init__(self, error_message: str): | |
| self.error_message = error_message | |
| message = f"参数模型验证失败({self.error_message})" | |
| super().__init__(message) | |
| class MemeFeedback(MemeGeneratorException): | |
| status_code: int = 560 | |