/install browser-auto-download
\r \r
Browser Auto Download v4.1.0 (Enhanced)\r
\r Download files from dynamic webpages with intelligent detection and multi-step navigation.\r \r
Key Features\r
\r
- Auto-download capture: Detects downloads triggered automatically on page load\r
- Multi-step navigation: Finds and navigates to platform-specific pages (PC/Desktop versions)\r
- Platform auto-detection: Windows x64/ARM64, macOS Intel/Apple Silicon, Linux\r
- Event listening: Captures all download events without requiring button clicks\r
- Smart fallback: Tries multiple strategies (auto-download, navigation, clicking)\r \r
When to Use\r
\r Use this skill for:\r
- Auto-download sites: Downloads start automatically when page loads\r
- Multi-step flows: Homepage - click "PC version" - download page\r
- Dynamic content: Download links generated via JavaScript\r
- Interactive downloads: Requires clicking buttons or navigating UI\r
\r
NOT for: Direct file URLs (use
curl/wgetinstead)\r \r
Quick Start\r
\r
Option 1: Automatic (Recommended)\r
\r
python skills/browser-auto-download/scripts/auto_download.py \\r
--url "https://example.com/download"\r
```\r
\r
The script will:\r
1. Check for auto-downloads on page load\r
2. Look for platform-specific page links (PC/Desktop version)\r
3. Navigate if needed\r
4. Try clicking download buttons as fallback\r
\r
### Option 2: Built-in Shortcuts\r
\r
```bash\r
# WeChat DevTools\r
python skills/browser-auto-download/scripts/auto_download.py --wechat\r
\r
# Meitu Xiuxiu\r
python skills/browser-auto-download/scripts/auto_download.py --meitu\r
```\r
\r
### Option 3: Python Module\r
\r
```python\r
from skills.browser-auto-download.scripts.auto_download import auto_download\r
\r
result = auto_download(\r
url="https://example.com/download",\r
auto_select=True, # Platform detection\r
auto_navigate=True # Multi-step navigation\r
)\r
\r
if result:\r
print(f"Downloaded: {result['path']}")\r
```\r
\r
## How It Works\r
\r
### Three-Stage Strategy\r
\r
**Stage 1: Auto-Download Detection**\r
```\r
Page loads - Check for downloads - Success?\r
Yes: No:\r
Save file Go to Stage 2\r
```\r
\r
**Stage 2: Multi-Step Navigation**\r
```\r
Look for "PC/Desktop" link - Navigate - Check downloads - Success?\r
Yes: No:\r
Save file Go to Stage 3\r
```\r
\r
**Stage 3: Button Clicking**\r
```\r
Try multiple selectors - Click - Wait for download - Save\r
```\r
\r
### Platform-Specific Page Detection\r
\r
Automatically finds links like:\r
- "meitu for PC" - pc.meitu.com\r
- "Desktop version" - desktop.example.com\r
- "Windows Download" - windows.example.com\r
\r
Keywords: `pc`, `desktop`, `windows`, `mac`, `download`, `电脑`, `桌面`, `客户端`\r
\r
## Examples\r
\r
### Auto-Download Sites (Best Case)\r
\r
```bash\r
# Sites that trigger download on page load\r
python skills/browser-auto-download/scripts/auto_download.py \\r
--url "https://pc.meitu.com/en/pc?download=pc"\r
```\r
\r
### Multi-Step Navigation\r
\r
```bash\r
# Homepage - PC version - Download\r
python skills/browser-auto-download/scripts/auto_download.py \\r
--url "https://xiuxiu.meitu.com/" \\r
--auto-navigate # Enable (default: True)\r
```\r
\r
### Manual Selector (Fallback)\r
\r
```bash\r
# If auto-detection fails\r
python skills/browser-auto-download/scripts/auto_download.py \\r
--url "https://example.com/download" \\r
--selector "button:has-text('Download for free')"\r
```\r
\r
### Disable Features\r
\r
```bash\r
# Don't navigate to platform pages\r
python skills/browser-auto-download/scripts/auto_download.py \\r
--url "https://example.com" \\r
--no-auto-navigate\r
\r
# Don't detect platform\r
python skills/browser-auto-download/scripts/auto_download.py \\r
--url "https://example.com" \\r
--no-auto-select\r
```\r
\r
## Platform Detection\r
\r
| System | Architecture | Keywords Used |\r
|--------|--------------|---------------|\r
| Windows | AMD64/x86_64 | windows, win64, x64, 64-bit, pc |\r
| Windows | x86/i686 | windows, win32, x86, 32-bit, pc |\r
| macOS | ARM64 (M1/M2/M3) | macos, arm64, apple silicon |\r
| macOS | x86_64 (Intel) | macos, x64, intel |\r
| Linux | x86_64 | linux, x64, amd64 |\r
\r
## Troubleshooting\r
\r
**Download not starting**:\r
- Use `--headless` (default: False) to observe the process\r
- Check stderr for auto-download messages\r
- Try `--no-auto-navigate` if navigation is causing issues\r
- Use `--selector` to manually specify button\r
\r
**Wrong version downloaded**:\r
- Check platform detection in stderr output\r
- Use `--no-auto-select` and manually specify `--selector`\r
- Verify the site offers multiple versions\r
\r
**Navigation going to wrong page**:\r
- Disable with `--no-auto-navigate`\r
- The site may not have platform-specific pages\r
\r
**File not saved**:\r
- Check write permissions in output directory\r
- Ensure sufficient disk space\r
- Wait for large files (up to 3 minutes)\r
\r
## Output Format\r
\r
### stderr (Progress)\r
```\r
Starting browser (visible)...\r
Opening: https://example.com\r
Checking for auto-downloads...\r
Checking for platform-specific page link...\r
Found platform page: https://pc.example.com\r
Navigating to platform page...\r
Download detected: software_v2.1.0_win64.exe\r
Saving: software_v2.1.0_win64.exe\r
\r
SUCCESS!\r
File: C:\Users\User\Downloads\software_v2.1.0_win64.exe\r
Size: 231.9 MB\r
```\r
\r
### stdout (JSON result)\r
```json\r
{\r
"path": "C:\\Users\\User\\Downloads\\software_v2.1.0_win64.exe",\r
"filename": "software_v2.1.0_win64.exe",\r
"size_bytes": 243209941,\r
"size_mb": 231.9,\r
"platform": "Windows AMD64"\r
}\r
```\r
\r
## Real-World Examples\r
\r
### Meitu Xiuxiu (Multi-step + Auto-download)\r
\r
```python\r
from auto_download import quick_download_meitu\r
\r
result = quick_download_meitu()\r
# Flow: Homepage - PC page link - Navigate - Auto-download\r
```\r
\r
### WeChat DevTools (Button click)\r
\r
```python\r
from auto_download import quick_download_wechat_devtools\r
\r
result = quick_download_wechat_devtools()\r
# Flow: Homepage - Click "Stable Windows 64" - Download\r
```\r
\r
### Generic Software (Mixed)\r
\r
```python\r
result = auto_download(\r
url="https://example.com/downloads",\r
auto_select=True, # Detect Windows 64-bit\r
auto_navigate=True # Find "Desktop version" link\r
)\r
```\r
\r
## Requirements\r
\r
```bash\r
pip install playwright\r
playwright install chromium\r
```\r
\r
## Advanced Usage\r
\r
### Custom Platform Keywords\r
\r
Modify `get_system_preference()` in the script to add custom keywords.\r
\r
### Integration with Scripts\r
\r
```python\r
import subprocess\r
import json\r
\r
result = subprocess.run([\r
'python', 'skills/browser-auto-download/scripts/auto_download.py',\r
'--url', 'https://example.com/download'\r
], capture_output=True, text=True)\r
\r
if result.returncode == 0:\r
data = json.loads(result.stdout)\r
print(f"Downloaded: {data['path']}") # Use the file\r
```\r
\r
### Batch Downloads\r
\r
```python\r
urls = [\r
"https://example1.com/download",\r
"https://example2.com/download",\r
"https://example3.com/download"\r
]\r
\r
for url in urls:\r
result = auto_download(url)\r
if result:\r
print(f"Success: {result['filename']}")\r
```\r
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install browser-auto-download - 安装完成后,直接呼叫该 Skill 的名称或使用
/browser-auto-download触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
browser-auto-download 是什么?
Browser-automated file download with enhanced features. Auto-detects platform (Windows/macOS/Linux, 64/32-bit, ARM/Intel), handles multi-step navigation (homepage to platform-specific pages), captures auto-downloads triggered on page load, and falls back to button clicking when needed. Ideal for complex download flows where curl/wget fail due to client-side rendering, automatic downloads, or multi-page navigation. Features page scrolling for lazy content, extended wait times, and Golang support. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 2055 次。
如何安装 browser-auto-download?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install browser-auto-download」即可一键安装,无需额外配置。
browser-auto-download 是免费的吗?
是的,browser-auto-download 完全免费(开源免费),可自由下载、安装和使用。
browser-auto-download 支持哪些平台?
browser-auto-download 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 browser-auto-download?
由 Aaronxx(@aaronxx)开发并维护,当前版本 v1.0.1。