Download
Download 对象通过页面上的 page.on('download') 事件分派。
浏览器上下文关闭时,属于该浏览器上下文的所有已下载文件都会被删除。
下载开始时会触发 `download` 事件。下载完成后,下载路径才会可用。
// Start waiting for download before clicking. Note no await.
const downloadPromise = page.waitForEvent('download');
await page.getByText('Download file').click();
const download = await downloadPromise;
// Wait for the download process to complete and save the downloaded file somewhere.
await download.saveAs('/path/to/save/at/' + download.suggestedFilename());
方法
cancel
添加于:v1.13取消下载。如果下载已完成或已取消,此方法不会失败。成功取消后,download.failure()
将解析为 'canceled'
。
用法
await download.cancel();
返回值
createReadStream
添加于 v1.9 之前对于成功的下载返回可读流,对于失败/取消的下载则抛出错误。
用法
await download.createReadStream();
返回值
delete
添加于 v1.9 之前删除下载的文件。如有必要,将等待下载完成。
用法
await download.delete();
返回值
failure
添加于 v1.9 之前返回下载错误(如果有)。如有必要,将等待下载完成。
用法
await download.failure();
返回值
page
添加于:v1.12获取下载所属的页面。
用法
download.page();
返回值
path
添加于 v1.9 之前对于成功的下载返回下载文件的路径,对于失败/取消的下载则抛出错误。如有必要,该方法将等待下载完成。远程连接时该方法会抛出错误。
请注意,下载的文件名是一个随机的 GUID,请使用 download.suggestedFilename() 获取建议的文件名。
用法
await download.path();
返回值
saveAs
添加于 v1.9 之前将下载文件复制到用户指定的路径。在下载仍在进行时调用此方法是安全的。如有必要,将等待下载完成。
用法
await download.saveAs('/path/to/save/at/' + download.suggestedFilename());
参数
返回值
suggestedFilename
添加于 v1.9 之前返回此下载的建议文件名。它通常由浏览器根据 Content-Disposition
响应头或 download
属性计算得出。请参阅 whatwg 上的规范。不同的浏览器可能使用不同的逻辑来计算它。
用法
download.suggestedFilename();
返回值
url
添加于 v1.9 之前返回下载的 URL。
用法
download.url();
返回值