执行 Ruff 安全自动修复
This commit is contained in:
@@ -1,17 +1,17 @@
|
||||
"""斗鱼任务执行器:商城兑换(由 douyu_runner.py 按功能域拆分)。"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import random
|
||||
import time
|
||||
from datetime import datetime, timezone
|
||||
from typing import Any, TYPE_CHECKING
|
||||
from datetime import UTC, datetime
|
||||
from typing import TYPE_CHECKING, Any
|
||||
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from core.douyu import DouyuActivityClient, DouyuActivityError
|
||||
from ..models import Account, DouyuEsportsGoodsSnapshot, DouyuGoodsSnapshot, DouyuTask
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from .douyu_runner import DouyuBatchRunner
|
||||
from ..models import Account, DouyuEsportsGoodsSnapshot, DouyuGoodsSnapshot, DouyuTask
|
||||
|
||||
# 兑换节奏与重试(对齐 8.30 浏览器抓包:锁单->支付间隔约 2.2~4.2s;火爆类错误要长退避而不是秒级连打)
|
||||
DOUYU_EXCHANGE_PRE_CREATE_JITTER = (0.3, 1.2)
|
||||
@@ -65,7 +65,7 @@ class GoodsMixin:
|
||||
goods = result["goods"]
|
||||
self._upsert_goods(db, goods)
|
||||
account.bind_status = account.bind_status or "active"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
self._mark_task(
|
||||
db,
|
||||
task,
|
||||
@@ -91,7 +91,7 @@ class GoodsMixin:
|
||||
goods = result["goods"]
|
||||
self._upsert_esports_goods(db, goods)
|
||||
account.esports_bind_status = "esports_goods_refreshed"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
self._mark_task(
|
||||
db,
|
||||
task,
|
||||
@@ -131,7 +131,7 @@ class GoodsMixin:
|
||||
.first()
|
||||
)
|
||||
account.bind_status = "goods_locked"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
expire_seconds = result.get("expire_seconds")
|
||||
expire_text = f",{expire_seconds} 秒内有效" if expire_seconds else ""
|
||||
self._mark_task(
|
||||
@@ -181,7 +181,7 @@ class GoodsMixin:
|
||||
.first()
|
||||
)
|
||||
account.bind_status = "goods_exchanged"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
result = {
|
||||
"commodity_id": commodity_id,
|
||||
"order_id": order_id,
|
||||
@@ -346,7 +346,7 @@ class GoodsMixin:
|
||||
finish_failed(f"预约到货失败: {exc}")
|
||||
return
|
||||
account.bind_status = "goods_subscribed"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
self._mark_task(
|
||||
db,
|
||||
task,
|
||||
@@ -383,7 +383,7 @@ class GoodsMixin:
|
||||
finish_failed(f"预兑失败: {exc}")
|
||||
return
|
||||
account.bind_status = "goods_pre_exchanged"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
self._mark_task(
|
||||
db,
|
||||
task,
|
||||
@@ -485,7 +485,7 @@ class GoodsMixin:
|
||||
}
|
||||
)
|
||||
account.bind_status = "goods_exchanged"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
# 兑换成功后自动刷新积分,更新账号最新积分信息(失败不阻断兑换成功)
|
||||
points_refresh = None
|
||||
try:
|
||||
@@ -575,7 +575,7 @@ class GoodsMixin:
|
||||
result["esports_points_refresh_error"] = str(exc)
|
||||
|
||||
account.esports_bind_status = "esports_goods_exchanged"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
name = (goods.name if goods else "") or commodity_id
|
||||
message = f"兑换电竞皮肤成功: {name}"
|
||||
if quantity > 1:
|
||||
@@ -608,7 +608,7 @@ class GoodsMixin:
|
||||
else f"限兑 {len(names)} 个: {', '.join(names[:5])}"
|
||||
)
|
||||
account.bind_status = "limited_goods_queried"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
self._mark_task(
|
||||
db,
|
||||
task,
|
||||
@@ -624,7 +624,7 @@ class GoodsMixin:
|
||||
result = client.exchange_records(manual_id=str(config["manual_id"]))
|
||||
records = result["records"]
|
||||
account.bind_status = "exchange_records_queried"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
self._mark_task(
|
||||
db,
|
||||
task,
|
||||
@@ -639,7 +639,7 @@ class GoodsMixin:
|
||||
client = self._client(cookie)
|
||||
token = client.csrf_token()
|
||||
account.bind_status = "csrf_token_ready"
|
||||
account.updated_at = datetime.now(timezone.utc)
|
||||
account.updated_at = datetime.now(UTC)
|
||||
self._mark_task(
|
||||
db,
|
||||
task,
|
||||
|
||||
Reference in New Issue
Block a user