优化等待设置,支持长时间验证过程

改进:
- 页面加载等待时间上限提高到 60秒
- 添加等待 networkidle 状态逻辑
- 前端界面增加等待设置说明
- 提示用户针对验证网站设置 10-30秒等待

使用场景:
- Cloudflare 等验证网站
- 复杂加载过程网站
- 需要用户确认的页面
This commit is contained in:
2026-07-05 01:32:52 +08:00
parent 5783feb60d
commit fc43e6e806
2 changed files with 36 additions and 16 deletions

16
app.py
View File

@@ -318,13 +318,25 @@ async def capture_with_playwright(
await stealth_async(page)
try:
await page.goto(url, wait_until="networkidle", timeout=30000)
except:
await page.goto(url, wait_until="domcontentloaded", timeout=30000)
except Exception as e:
# 如果 domcontentloaded 超时,尝试 commit
try:
await page.goto(url, wait_until="commit", timeout=30000)
except:
pass
# 固定等待时间(用于验证、加载等过程)
if wait_time > 0:
await page.wait_for_timeout(wait_time)
# 等待页面基本稳定
try:
await page.wait_for_load_state("networkidle", timeout=5000)
except:
# networkidle 超时没关系,继续执行
pass
if scroll_times > 0:
for i in range(scroll_times):
await page.evaluate("window.scrollBy(0, 800)")