Download
Download 物件會透過 page.on('download') 事件分派。
當瀏覽器 context 關閉時,所有屬於該瀏覽器 context 的下載檔案都會被刪除。
下載事件會在下載開始時發出。下載路徑會在下載完成後可用。
// 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());
方法
取消
新增於:v1.13取消下載。如果下載已完成或已取消,則不會失敗。成功取消後,download.failure()
會解析為 'canceled'
。
用法
await download.cancel();
回傳
createReadStream
v1.9 之前新增為成功的下載回傳可讀取 stream,或為失敗/已取消的下載拋出錯誤。
用法
await download.createReadStream();
回傳
刪除
v1.9 之前新增刪除已下載的檔案。如有必要,將等待下載完成。
用法
await download.delete();
回傳
失敗原因
v1.9 之前新增回傳下載錯誤(如果有的話)。如有必要,將等待下載完成。
用法
await download.failure();
回傳
頁面
新增於:v1.12取得下載所屬的頁面。
用法
download.page();
回傳
路徑
v1.9 之前新增為成功的下載回傳已下載檔案的路徑,或為失敗/已取消的下載拋出錯誤。如有必要,此方法將等待下載完成。遠端連線時,此方法會拋出錯誤。
請注意,下載的檔案名稱是隨機 GUID,請使用 download.suggestedFilename() 取得建議的檔案名稱。
用法
await download.path();
回傳
另存為
v1.9 之前新增將下載複製到使用者指定的路徑。在下載仍在進行中時呼叫此方法是安全的。如有必要,將等待下載完成。
用法
await download.saveAs('/path/to/save/at/' + download.suggestedFilename());
參數
回傳
建議檔案名稱
v1.9 之前新增回傳此下載的建議檔案名稱。它通常由瀏覽器根據 Content-Disposition
response header 或 download
attribute 計算得出。請參閱 whatwg 上的規範。不同的瀏覽器可以使用不同的邏輯來計算它。
用法
download.suggestedFilename();
回傳
URL
v1.9 之前新增回傳已下載的 URL。
用法
download.url();
回傳