【发布时间】:2019-10-26 22:21:52
【问题描述】:
我正在尝试使用 Puppeteer 在 textarea 字段中输入一些文本。
我的做法是将文本复制到剪贴板,然后点击文本区域并尝试将其粘贴进去。但是,文本并没有添加到输入字段中。
我尝试过的事情:
使用 page.type 需要很长时间,因为文本是几千个字符。我宁愿避免这种情况。
使用 page.$eval("#textarea", (el, in) => el.value = in, text) 不起作用,因为该站点是 SPA。
await clipboardy.writeSync(text);
await page.click("#textarea")
await page.waitFor(500);
await page.keyboard.down('Control');
await page.keyboard.down('Shift');
await page.keyboard.press('KeyV');
await page.keyboard.up('Control');
await page.keyboard.up('Shift');
// does not paste
// also tried, clipboardy.readSync();
// does not paste either
预期的结果是在 SPA 文本区域中输入文本。
【问题讨论】:
-
这种方法在 MacOS 上也适用吗?
-
我也在 Mac 上尝试,但没有运气
标签: node.js clipboard puppeteer paste