Browser File Upload (Industrial-Grade)
Automates file uploads to web pages using agent-browser CLI with high reliability.
🔥 Execution Protocol (MANDATORY)
You MUST follow strict state-machine execution:
- Execute ONLY ONE command at a time
- WAIT for result before next step
- VERIFY success before continuing
- If failed → retry or fallback
- DO NOT skip steps
- DO NOT batch commands
- DO NOT assume elements exist
🔥 Standard Upload Pipeline (REQUIRED)
Follow this exact sequence:
Step 1 — Open Page
agent-browser open <url>
Step 2 — Wait for Load
agent-browser wait 2000
If page is slow: agent-browser wait --load networkidle
Step 3 — Trigger File Input
Try in order:
- agent-browser find text "选择文件" click
- agent-browser find text "上传" click
- agent-browser click "[type=file]"
If all fail: agent-browser snapshot
Step 4 — Upload File
Preferred selector: agent-browser upload "[type=file]" <file-path>
If selector known: agent-browser upload "<selector>" <file-path>
Step 5 — Verify Upload (IMPORTANT)
agent-browser snapshot
Check:
- File name appears
- No error message
- Input is not empty
If failed → retry upload once
🔥 Strategy Selection
Priority:
- ✅ Python script (MOST STABLE)
- ⚠️ agent-browser commands (when selector known)
🔥 Python Script Mode (Recommended)
Use for robust execution:
python scripts/upload_file.py <url> <file-path> [selector] [wait_ms]