尝试使用 Puppetter 打印 PDF 时出现以下错误。我无法在网上找到有关此错误的更多信息。这是否意味着这个特定页面不支持 PDF,或者我的代码中是否有可以修改它的设置?任何帮助,将不胜感激。
export const create = async (dev: boolean = true) => {
const username = process.env.USERNAME;
const password = process.env.PASSWORD;
const options = dev
? {
headless: false,
slowMo: 25,
}
: {};
const browser = await Puppeteer.launch(options);
const page = await browser.newPage();
await page.goto(LOGIN_URL, {
waitUntil: "networkidle2",
});
await page.type(USERNAME_INPUT_ID, username);
const passwordInputHandle = await page.$(PASSWORD_INPUT_ID);
await passwordInputHandle.type(password);
await passwordInputHandle.press("Enter");
await page.pdf({ path: path.join(TEMP_FOLDER, "hn.pdf"), format: "a4" });
await browser.close();
};
最佳答案
PDF创建是仅限 支持 headless
模式。
所以这应该工作:
const browser = await Puppeteer.launch({ headless: true });
关于javascript - Puppeteer - ProtocolError : Protocol error (Page. printToPDF):打印不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70919632/