如何解决Puppeteer 下载带有内容的空白 PDF 而不是预期的 PDF
我必须下载 pdf,但它首先需要通过访问托管 PDF 链接的页面来收集 cookie。 我点击了链接,但下载了一个 blanc PDF,其页码与预期的页码相同。
(async () => {
const browser = await puppeteer.launch({
dumpio: true,headless: false,devtools: true,// I want to see what's going on
})
const [page] = await browser.pages();
page.on('console',msg => console.log(msg.text()));
await page.goto(url_cookie,{ waitUntil: ['domcontentloaded','networkidle0','load'] });
page._client.send('Page.setDownloadBehavior',{ behavior: 'allow',downloadpath: './',});
page.once('response',async (response) => {
if (response.url() !== url_pdf) return;
console.log('resp',response.url());
});
const css = 'a[href="' + url + '"]';
await page.waitForSelector(css)
const eval = async css => {
const a = document.querySelector(css);
console.log(a)
return fetch(a.href,{
method: 'GET',credentials: 'include',}).then(r => r.text())
};
const txt = await page.evaluate(eval,[css]);
fs.writeFileSync('./test.pdf',txt,)
await page.close();
await browser.close();
})();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。