Получить файл в переменную нажатием кнопки в Puppeteer - PullRequest
1 голос
/ 22 января 2020

Мне известно, что если я знаю URL, то я могу получить файл в переменную, подобную этой:

await page.evaluate(() => {
    return fetch(URL, {
        method: "GET",
        credentials: "include"
    }).then(r => r.text());
});

Моя проблема в том, что прямого URL нет, просто кнопка в страница, которая делает JS волхвов c, а затем начинается загрузка.

Какой код будет запускать загрузку в этом случае с помощью нажатия кнопки (без формы)

ОБНОВЛЕНИЕ

Этот код работает для загрузки с помощью нажатия кнопки:

await page._client.send('Page.setDownloadBehavior', {
    behavior: 'allow',
    downloadPath: '/home/domain.tld/tmp',
});
await page.click('#exportButton');
await page.waitFor(20000);
  1. Есть ли способ установить имя файла?

  2. Как я могу это сделать, не загружая файл, а извлекая его в переменную?

Спасибо,

...