我正在尝试在树莓派 B 上使用 playwright 来生成网页的屏幕截图。
.js 文件运行良好
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch({
headless: true
});
const context = await browser.newContext();
const page = await context.newPage();
await page.goto('https://www.wikipedia.org/');
await page.screenshot({path:'wiki.png'})
// ---------------------
await context.close();
await browser.close();
})();
理想情况下,我想在 NodeRed 中执行此操作,但将代码粘贴到功能块中会产生:
11/8/2023, 2:24:40 PMnode: function 1
function : (error)
"ReferenceError: require is not defined (line 2, col 22)"
这是一个容易解决的问题吗?或者如何从 Nodered 中执行 javascript 文件?
尝试在功能块内粘贴代码...出现错误 还尝试添加 node-red-contrib-playwright 节点,但我看不到任何文档,并且它不会添加任何节点。
节点红色文档涵盖了这一点这里
你有2个选择
settings.js
文件以将剧作家模块添加到全局上下文中。您需要使用 global.get('playwright')
而不是 require('playwright')
const chromium = playwright.chromium