3.2 KiB
3.2 KiB
Playwright 浏览器版本信息
本文档记录 ERPAuto 当前使用的 Playwright 版本,以及代码中采用的浏览器目录约定。
当前版本
根据 package.json,项目当前依赖为:
| 组件 | 当前版本 |
|---|---|
playwright |
^1.58.2 |
playwright-core |
^1.58.2 |
@playwright/test |
^1.58.2 |
当前代码中的目录约定
根据 src/main/index.ts,应用启动时会把:
PLAYWRIGHT_BROWSERS_PATH = %APPDATA%\erpauto\ms-playwright
随后按以下顺序检查 Chromium:
- 优先检查:
%APPDATA%\erpauto\ms-playwright\chromium-1208\chrome-win64\chrome.exe
- 兼容旧结构:
%APPDATA%\erpauto\ms-playwright\chromium-win32\chrome.exe
- 如果仍然找不到,则继续扫描任意
chromium-*目录,并尝试:
%APPDATA%\erpauto\ms-playwright\chromium-<revision>\chrome-win64\chrome.exe
这意味着:
chromium-1208是当前代码优先查找的默认 revision- 但应用并不只接受
1208 - 当前主目录结构是
chrome-win64
推荐目录结构
Windows 开发环境
C:\Users\<用户名>\AppData\Local\ms-playwright\
└── chromium-1208/
└── chrome-win64/
├── chrome.exe
└── ...
目标部署环境
%APPDATA%\erpauto\ms-playwright\
└── chromium-1208/
└── chrome-win64/
├── chrome.exe
└── ...
如果不是 1208,只要目录名满足 chromium-* 且内部存在 chrome-win64\chrome.exe,当前代码也能识别。
使用建议
开发环境准备
- 安装项目依赖:
npm install
- 下载 Chromium 浏览器:
npx playwright install chromium
复制浏览器文件
- 在开发机上找到 Playwright 浏览器缓存目录:
C:\Users\<用户名>\AppData\Local\ms-playwright\
- 复制完整的
chromium-*目录到目标路径:
%APPDATA%\erpauto\ms-playwright\
- 确保内部存在:
chrome-win64\chrome.exe
注意事项
- ERPAuto 当前只依赖 Chromium,不需要 Firefox 和 WebKit
- 浏览器文件体积较大,建议按整个 revision 目录复制
- 当前代码会优先尝试
chromium-1208 - 但从实现角度看,“revision 严格等于 1208”不是唯一成功条件
- 真正关键的是目录结构与可执行文件路径满足当前查找规则
故障排查
浏览器无法启动
优先检查:
%APPDATA%\erpauto\ms-playwright\是否存在- 是否存在
chromium-1208\chrome-win64\chrome.exe - 是否存在其他
chromium-*目录,且包含chrome-win64\chrome.exe - 是否误用了过时的
chrome-win\chrome.exe路径
版本不匹配或路径不匹配
建议同时确认:
package.json中的 Playwright 版本- 目标机器上实际部署的 Chromium 目录
- 当前目录结构是否为
chrome-win64\chrome.exe - 应用启动时是否能在
%APPDATA%\erpauto\ms-playwright\下扫描到有效 revision