执行 Ruff 安全自动修复

This commit is contained in:
yml2213
2026-08-31 10:28:14 +08:00
parent 2a1d27f953
commit b58c6b4357
145 changed files with 940 additions and 993 deletions
+11 -14
View File
@@ -6,11 +6,9 @@ import re
import threading
import time
from datetime import datetime, timedelta
from typing import Optional
from loguru import logger
import requests
from loguru import logger
# Roundcube Webmail 地址。可通过环境变量覆盖。空值时回退到默认。
ROUNDCUBE_URL = os.getenv("MAIL_ROUNDCUBE_URL") or "http://111.229.206.54:8000/"
@@ -40,7 +38,7 @@ class EmailVerifier:
max_messages: int = 20,
use_ssl: bool = False,
roundcube_url: str = "",
backup_passwords: Optional[list[str]] = None,
backup_passwords: list[str] | None = None,
):
# 兼容旧参数名
self.imap_server = imap_server
@@ -54,14 +52,13 @@ class EmailVerifier:
)
# Roundcube 会话(懒初始化)
self._rc_session: Optional[requests.Session] = None
self._rc_token: Optional[str] = None
self._rc_session: requests.Session | None = None
self._rc_token: str | None = None
self._rc_logged_in = False
self._rc_login_error = ""
def connect(self) -> None:
"""兼容接口"""
pass
def disconnect(self) -> None:
"""关闭 Roundcube 会话"""
@@ -239,7 +236,7 @@ class EmailVerifier:
# ── Roundcube 读取邮件内容 ─────────────────────────────
def _rc_fetch_email_body(self, uid: int) -> Optional[str]:
def _rc_fetch_email_body(self, uid: int) -> str | None:
"""通过 Roundcube 读取指定 UID 邮件的正文"""
if not self._ensure_roundcube_session():
if self._rc_login_error:
@@ -262,7 +259,7 @@ class EmailVerifier:
# ── Roundcube 日期解析 ─────────────────────────────────
@staticmethod
def _parse_rc_date(date_str: str) -> Optional[datetime]:
def _parse_rc_date(date_str: str) -> datetime | None:
"""
解析 Roundcube 返回的日期字符串为 datetime。
@@ -363,9 +360,9 @@ class EmailVerifier:
self,
max_wait: int = 60,
interval: int = 3,
after_timestamp: Optional[float] = None,
after_timestamp: float | None = None,
allow_old_seconds: int = 15,
stop_event: Optional[threading.Event] = None,
stop_event: threading.Event | None = None,
) -> str:
"""
轮询获取斗鱼验证码。
@@ -417,9 +414,9 @@ class EmailVerifier:
def _fetch_code_via_roundcube(
self,
after_timestamp: Optional[float] = None,
after_timestamp: float | None = None,
allow_old_seconds: int = 15,
) -> Optional[str]:
) -> str | None:
"""通过 Roundcube API 获取最新斗鱼验证码"""
messages = self._rc_fetch_mail_list()
@@ -465,7 +462,7 @@ class EmailVerifier:
# ── 通用工具方法 ───────────────────────────────────────
def _extract_verification_code(self, text: str) -> Optional[str]:
def _extract_verification_code(self, text: str) -> str | None:
"""从文本中提取6位验证码"""
# 清理HTML标签和实体
text = html.unescape(text)