微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Puppeteer 下载带有内容的空白 PDF 而不是预期的 PDF

如何解决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 举报,一经查实,本站将立刻删除。