mirror of
https://git.oceanpay.cc/danial/kami_apple_exchage.git
synced 2025-12-18 21:19:19 +00:00
refactor(data): 重构数据目录结构并优化相关配置
- 移除 screenshot 相关代码和配置 - 修改 SNAPSHOT_DIR 路径为复数形式 - 更新 Dockerfile 和 docker-compose 文件中的数据目录结构 - 优化 playwright_service 中的等待逻辑 - 修改异常日志输出,使用 traceback 提供更详细的信息
This commit is contained in:
@@ -15,7 +15,7 @@ clone:
|
||||
steps:
|
||||
- name: create data directories
|
||||
commands:
|
||||
- mkdir -p /data/apple_exchange/redis_data /data/apple_exchange/postgres_data /data/apple_exchange/logs /data/apple_exchange/data /data/apple_exchange/screenshots /data/apple_exchange/shared /data/apple_exchange/playwright_browsers
|
||||
- mkdir -p /data/apple_exchange/redis_data /data/apple_exchange/postgres_data /data/apple_exchange/logs /data/apple_exchange/data /data/apple_exchange/playwright_browsers
|
||||
|
||||
- name: deploy to production server
|
||||
commands:
|
||||
|
||||
@@ -68,7 +68,7 @@ OTEL_MAX_QUEUE_SIZE=2048
|
||||
|
||||
# 文件存储配置
|
||||
UPLOAD_DIR=./data/uploads
|
||||
SNAPSHOT_DIR=./data/snapshot
|
||||
SNAPSHOT_DIR=./data/snapshots
|
||||
HTML_DIR=./data/html
|
||||
MAX_FILE_SIZE=16777216
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ RUN apt-get update && apt-get install -y \
|
||||
RUN ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
|
||||
dpkg-reconfigure -f noninteractive tzdata
|
||||
|
||||
RUN mkdir -p /app/data/snapshot /app/data/html /app/data/uploads /app/data/shared /app/logs
|
||||
RUN mkdir -p /app/data/uploads /app/logs /app/data/playwright-browsers
|
||||
|
||||
COPY app ./app
|
||||
COPY run.py ./
|
||||
|
||||
@@ -33,7 +33,7 @@ COPY --chmod=755 docker-entrypoint.sh ./
|
||||
RUN uv sync --frozen && \
|
||||
chmod -R 755 /app/.venv/bin/*
|
||||
|
||||
RUN mkdir -p /app/data/snapshot /app/data/html /app/data/uploads /app/data/shared /app/logs /app/data/playwright-browsers
|
||||
RUN mkdir -p /app/data/uploads /app/logs /app/data/playwright-browsers
|
||||
|
||||
COPY app ./app
|
||||
COPY scripts ./scripts
|
||||
|
||||
@@ -678,7 +678,7 @@ class AppleOrderProcessor:
|
||||
wait_stable=True,
|
||||
):
|
||||
raise Exception("无法点击 continue_to_review")
|
||||
await page.wait_for_timeout(2000)
|
||||
await page.wait_for_load_state("networkidle")
|
||||
logger.info(f"{self.thread_prefix} 已处理配送信息")
|
||||
return True
|
||||
except Exception as e:
|
||||
@@ -707,10 +707,16 @@ class AppleOrderProcessor:
|
||||
):
|
||||
raise Exception("无法点击 place_order")
|
||||
await page.wait_for_timeout(timeout=5000)
|
||||
await page.wait_for_load_state("networkidle")
|
||||
# 强制等待
|
||||
max_wait_timeout = 60
|
||||
while max_wait_timeout >= 0:
|
||||
if "You’re all set." in await page.content():
|
||||
try:
|
||||
content = await page.content()
|
||||
except Exception:
|
||||
continue
|
||||
|
||||
if "You’re all set." in content:
|
||||
logger.info(f"{self.thread_prefix} 订单提交成功")
|
||||
break
|
||||
logger.info(
|
||||
@@ -739,7 +745,7 @@ class AppleOrderProcessor:
|
||||
|
||||
return True
|
||||
except Exception as e:
|
||||
logger.error(f"{self.thread_prefix} 订单完成失败: {e}")
|
||||
logger.error(f"{self.thread_prefix} 订单完成失败: {traceback.format_exc()}")
|
||||
raise e
|
||||
|
||||
async def _extract_order_info(self, page: Page) -> dict[str, Any]:
|
||||
|
||||
@@ -36,7 +36,6 @@ services:
|
||||
- DATABASE_URL=postgresql+asyncpg://postgres:Kp9mX8vL2nQ5wR7@db:5432/apple_exchange
|
||||
- REDIS_URL=redis://:Df4jG7zN9pL1tY3@redis:6379/0
|
||||
- WORKERS=4
|
||||
- SCREENSHOT_DIR=/app/data/snapshot
|
||||
- LOG_DIR=/app/logs
|
||||
volumes:
|
||||
- logs:/app/logs
|
||||
@@ -65,7 +64,6 @@ services:
|
||||
- DATABASE_URL=postgresql+asyncpg://postgres:Kp9mX8vL2nQ5wR7@db:5432/apple_exchange
|
||||
- REDIS_URL=redis://:Df4jG7zN9pL1tY3@redis:6379/0
|
||||
- WORKER_MAX_CONCURRENT_TASKS=5
|
||||
- SCREENSHOT_DIR=/app/data/snapshot
|
||||
- LOG_DIR=/app/logs
|
||||
- PLAYWRIGHT_BROWSERS_PATH=/app/data/playwright-browsers
|
||||
volumes:
|
||||
|
||||
@@ -58,7 +58,6 @@ services:
|
||||
- REDIS_URL=redis://redis:6379/0
|
||||
|
||||
- WORKERS=4
|
||||
- SCREENSHOT_DIR=/app/data/snapshot
|
||||
- LOG_DIR=/app/logs
|
||||
volumes:
|
||||
- logs:/app/logs
|
||||
@@ -110,7 +109,6 @@ services:
|
||||
- DATABASE_URL=postgresql+asyncpg://postgres:${POSTGRES_PASSWORD}@db:5432/apple_exchange
|
||||
- REDIS_URL=redis://redis:6379/0
|
||||
- WORKER_MAX_CONCURRENT_TASKS=2
|
||||
- SCREENSHOT_DIR=/app/data/snapshot
|
||||
- LOG_DIR=/app/logs
|
||||
- PLAYWRIGHT_BROWSERS_PATH=/app/data/playwright-browsers
|
||||
volumes:
|
||||
|
||||
@@ -37,7 +37,6 @@ services:
|
||||
- REDIS_URL=redis://redis:6379/0
|
||||
|
||||
- WORKERS=4
|
||||
- SCREENSHOT_DIR=/app/data/snapshot
|
||||
- LOG_DIR=/app/logs
|
||||
volumes:
|
||||
- logs:/app/logs
|
||||
@@ -66,7 +65,6 @@ services:
|
||||
- DATABASE_URL=postgresql+asyncpg://postgres:password@db:5432/apple_exchange
|
||||
- REDIS_URL=redis://redis:6379/0
|
||||
- WORKER_MAX_CONCURRENT_TASKS=2
|
||||
- SCREENSHOT_DIR=/app/data/snapshot
|
||||
- LOG_DIR=/app/logs
|
||||
- PLAYWRIGHT_BROWSERS_PATH=/app/data/playwright-browsers
|
||||
volumes:
|
||||
|
||||
Reference in New Issue
Block a user