Download

Struct Download 

Source
pub struct Download {
    inner: Arc<Download>,
}
Expand description

Download objects are dispatched by page via the [event: Page.download] event.

All the downloaded files belonging to the browser context are deleted when the browser context is closed. All downloaded files are deleted when the browser closes.

Download event is emitted once the download starts. Download path becomes available once download completes:

const [ download ] = await Promise.all([
 page.waitForEvent('download'), // wait for download to start
 page.click('a')
]);
const path = await download.path();

NOTE: Browser context must be created with the acceptDownloads set to true when user needs access to the downloaded content. If acceptDownloads is not set, download events are emitted, but the actual download is not performed and user has no access to the downloaded files.

Fields§

§inner: Arc<Download>

Implementations§

Source§

impl Download

Source

pub(crate) fn new(inner: Arc<Impl>) -> Self

Source

pub fn url(&self) -> &str

Returns downloaded url.

Source

pub fn suggested_filename(&self) -> &str

Returns suggested filename for this download. It is typically computed by the browser from the Content-Disposition response header or the download attribute. See the spec on whatwg. Different browsers can use different logic for computing it.

Source

pub async fn path(&self) -> Result<Option<PathBuf>, Arc<Error>>

Returns path to the downloaded file in case of successful download. The method will wait for the download to finish if necessary.

Source

pub async fn delete(&self) -> Result<(), Arc<Error>>

Deletes the downloaded file. Will wait for the download to finish if necessary.

Source

pub async fn save_as<P: AsRef<Path>>(&self, path: P) -> Result<(), Arc<Error>>

Saves the download to a user-specified path. It is safe to call this method while the download is still in progress. Path where the download should be saved.

Source

pub async fn failure(&self) -> Result<Option<String>, Arc<Error>>

Returns download error if any. Will wait for the download to finish if necessary.

Trait Implementations§

Source§

impl Clone for Download

Source§

fn clone(&self) -> Download

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.