首页 > 解决方案 > 如何使用 Puppeteer 下载 pdf

问题描述

我正在尝试使用 Puppeteer 进行一些网络抓取,但我不确定如何实际下载我找到的文档。具体来说,我想从这样的页面下载pdf。我试图下载 pdf 的代码部分目前看起来像这样(注释行是下载尝试不起作用):

                const newPagePromise = new Promise(x => browser.once('targetcreated', target => x(target.page())));
                await page.click('#gvDocketResult_ctl0'+rows.length+'_hlDocumentRedacted');
                await page.waitFor(3000);
                const newPage = await newPagePromise;
                // need to figure out how to download
                await newPage._client.send('Page.setDownloadBehavior', {behavior: 'allow', downloadPath: '/Users/me/Desktop'});
                // await newPage.pdf({path: 'hn.pdf', format: 'letter'});
                // await newPage.click('#download');
                // await newPage.click('#icon');

抱歉,如果这个问题看起来很简单,我几天前才开始使用 Puppeteer,但还是有点迷茫。如果有人知道我应该如何去做,将不胜感激。

编辑:所以从我目前发现的情况来看,如果我可以获得网页的 src = '' 部分中显示的链接(下图),那么我可能可以使用 page.goto(link) 来下载PDF?无论如何,我不知道如何在 puppeteer 中访问该链接,因此,如果有人对此有任何建议,我将不胜感激。在此处输入图像描述

标签: node.jschromiumpuppeteer

解决方案


推荐阅读