在 ubuntu 20.04 上,我在运行我的第一个剧作家脚本时遇到了错误:
按照剧作家安装说明node first_script.js
通过npm i -D playwright
(剧作家 v1.10.0 和 v10.19.0)安装后
const { webkit } = require('playwright');
(async () => {
const browser = await webkit.launch();
const page = await browser.newPage();
await page.goto('http://whatsmyuseragent.org/');
await page.screenshot({ path: `whatsmyuseragent.png` });
await browser.close();
})();
看到的错误包括:
- “加载共享库时出错:libharfbuzz-icu.so.0:无法打开共享对象文件:没有这样的文件或目录”
根据几个错误#1935 #2621,运行以下允许我成功运行:
sudo apt-get install libgles2 gstreamer1.0-libav libharfbuzz-icu0 libwoff1 libgstreamer-plugins-bad1.0-0 libgstreamer-gl1.0-0 libwebp-dev
然后尝试在同一个 ubuntu 20.04 上使用 chrome(chromium)、firefox 和 webkit 运行第二个脚本node second_script.js
const playwright = require('playwright');
(async () => {
for (const browserType of ['chromium', 'firefox', 'webkit']) {
const browser = await playwright[browserType].launch();
const context = await browser.newContext();
const page = await context.newPage();
await page.goto('http://whatsmyuseragent.org/');
await page.screenshot({ path: `example-${browserType}.png` });
await browser.close();
}
})();
并得到错误:
- [pid=532053][err] 文件 /home/playwright/.cache/ms-playwright/firefox-1238/firefox/libxul.so 的 XPCOMGlueLoad 错误:[pid=532053][err] libdbus-glib-1.so。 2:无法打开共享对象文件:没有这样的文件或目录[pid=532053][err] 无法加载XPCOM。
安装 Firefox 和第二个脚本成功运行:
sudo apt-get install firefox