验证关键词 Args: keyword: 搜索关键词 Returns: 处理后的关键词 Raises: InvalidParameterError: 关键词无效
(keyword: str)
| 480 | |
| 481 | |
| 482 | def validate_keyword(keyword: str) -> str: |
| 483 | """ |
| 484 | 验证关键词 |
| 485 | |
| 486 | Args: |
| 487 | keyword: 搜索关键词 |
| 488 | |
| 489 | Returns: |
| 490 | 处理后的关键词 |
| 491 | |
| 492 | Raises: |
| 493 | InvalidParameterError: 关键词无效 |
| 494 | """ |
| 495 | if not keyword: |
| 496 | raise InvalidParameterError("keyword 不能为空") |
| 497 | |
| 498 | if not isinstance(keyword, str): |
| 499 | raise InvalidParameterError("keyword 必须是字符串类型") |
| 500 | |
| 501 | keyword = keyword.strip() |
| 502 | |
| 503 | if not keyword: |
| 504 | raise InvalidParameterError("keyword 不能为空白字符") |
| 505 | |
| 506 | if len(keyword) > 100: |
| 507 | raise InvalidParameterError( |
| 508 | "keyword 长度不能超过100个字符", |
| 509 | suggestion="请使用更简洁的关键词" |
| 510 | ) |
| 511 | |
| 512 | return keyword |
| 513 | |
| 514 | |
| 515 | def validate_top_n(top_n: Optional[Union[int, str]], default: int = 10) -> int: |
no test coverage detected