下载
Download 对象由页面通过 page.on("download") 事件派发。
当浏览器上下文关闭时,属于该浏览器上下文的所有下载文件将被删除。
下载事件在下载开始时发出。下载路径在下载完成时可用。
- 同步
- 异步
# Start waiting for the download
with page.expect_download() as download_info:
# Perform the action that initiates download
page.get_by_text("Download file").click()
download = download_info.value
# Wait for the download process to complete and save the downloaded file somewhere
download.save_as("/path/to/save/at/" + download.suggested_filename)
# Start waiting for the download
async with page.expect_download() as download_info:
# Perform the action that initiates download
await page.get_by_text("Download file").click()
download = await download_info.value
# Wait for the download process to complete and save the downloaded file somewhere
await download.save_as("/path/to/save/at/" + download.suggested_filename)
方法
取消
添加于: v1.13取消下载。如果下载已完成或已取消,则不会失败。在成功取消后,download.failure()
将解析为 'canceled'
。
用法
download.cancel()
返回值
删除
添加于 v1.9 之前删除已下载文件。如果需要,将等待下载完成。
用法
download.delete()
返回值
失败
添加于 v1.9 之前如果存在,则返回下载错误。如果需要,将等待下载完成。
用法
download.failure()
返回值
路径
添加于 v1.9 之前对于成功的下载,返回已下载文件的路径,或者对于失败/取消的下载抛出异常。该方法将等待下载完成(如果需要)。当远程连接时,该方法会抛出异常。
请注意,下载的文件名是随机的 GUID,使用 download.suggested_filename 获取建议的文件名。
用法
download.path()
返回值
保存为
添加于 v1.9 之前将下载复制到用户指定的路径。在下载仍在进行时调用此方法是安全的。如果需要,将等待下载完成。
用法
- 同步
- 异步
download.save_as("/path/to/save/at/" + download.suggested_filename)
await download.save_as("/path/to/save/at/" + download.suggested_filename)
参数
-
path
Union[str, pathlib.Path]#应将下载复制到的路径。
返回值
属性
页面
添加于: v1.12获取下载所属的页面。
用法
download.page
返回值
建议的文件名
添加于 v1.9 之前返回此下载的建议文件名。它通常由浏览器从 Content-Disposition
响应头或 download
属性计算得出。有关详细信息,请参阅 whatwg 上的规范。不同的浏览器可以使用不同的逻辑来计算它。
用法
download.suggested_filename
返回值
URL
添加于 v1.9 之前返回已下载的 URL。
用法
download.url
返回值