跳到主要內容

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.cancel

取消下載。如果下載已完成或已取消,則不會失敗。成功取消後,download.failure() 會解析為 'canceled'

用法

await download.cancel();

回傳


createReadStream

v1.9 之前新增 download.createReadStream

為成功的下載回傳可讀取 stream,或為失敗/已取消的下載拋出錯誤。

用法

await download.createReadStream();

回傳


刪除

v1.9 之前新增 download.delete

刪除已下載的檔案。如有必要,將等待下載完成。

用法

await download.delete();

回傳


失敗原因

v1.9 之前新增 download.failure

回傳下載錯誤(如果有的話)。如有必要,將等待下載完成。

用法

await download.failure();

回傳


頁面

新增於:v1.12 download.page

取得下載所屬的頁面。

用法

download.page();

回傳


路徑

v1.9 之前新增 download.path

為成功的下載回傳已下載檔案的路徑,或為失敗/已取消的下載拋出錯誤。如有必要,此方法將等待下載完成。遠端連線時,此方法會拋出錯誤。

請注意,下載的檔案名稱是隨機 GUID,請使用 download.suggestedFilename() 取得建議的檔案名稱。

用法

await download.path();

回傳


另存為

v1.9 之前新增 download.saveAs

將下載複製到使用者指定的路徑。在下載仍在進行中時呼叫此方法是安全的。如有必要,將等待下載完成。

用法

await download.saveAs('/path/to/save/at/' + download.suggestedFilename());

參數

  • path string#

    下載應複製到的路徑。

回傳


建議檔案名稱

v1.9 之前新增 download.suggestedFilename

回傳此下載的建議檔案名稱。它通常由瀏覽器根據 Content-Disposition response header 或 download attribute 計算得出。請參閱 whatwg 上的規範。不同的瀏覽器可以使用不同的邏輯來計算它。

用法

download.suggestedFilename();

回傳


URL

v1.9 之前新增 download.url

回傳已下載的 URL。

用法

download.url();

回傳