playwright中下载文件操作,可以通过Download对象实现
下载代码
- 点击下载按钮,可以得到一个download对象
- 通过download对象的suggested_filename获得文件名
- 试用save_as方法保存下载文件
def download_csv(self):
with self.page.expect_download() as download_info:
self.get_by_link("Download CSV").click() # click download button, get download object
download = download_info.value
name = download.suggested_filename # get suggested name
file = f"download/{name}" # file path
download.save_as(file) # download file
Download
Download对象除了以上用到的 suggestes_filename, save_as, 还有cancel, delete, failure, page, path, url
- url: download.url,获取下载的url
- path: download.path(), 下载文件,不过文件名是随机的GUID
- page: download.page, 返回的是download对象所属的page对象
- failure: download.failure(), 返回download error
- delete: download.delete(), 删除下载的文件(验证对path保存的文件删除有效)
- cancel: download.cancel(), 取消下载