Как получить доступ к данным, показанным на вкладке источников в Chrome? - PullRequest
0 голосов
/ 07 января 2020

Так что я немного застрял здесь. Я занимаюсь утилизацией Puppeteer, но в какой-то момент мне нужно скачать файл. Проблема в том, что файл «генерируется» после нажатия на кнопку. Я знаю, как это сделать на Puppeteer, а также для сбора запросов и ответов со страницы, однако ни один из них не используется.

Итак, у меня есть кнопка на предыдущей странице, это кнопка после проверки it.

<button
    id="ReporteOpinionForm:botonConsultar"
    name="ReporteOpinionForm:botonConsultar"
    class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only ui-button"
    type="submit">
        <span class="ui-button-text ui-c">
        Consultar
        </span>
</button>

Просматривая всю страницу, я вижу, что она использует Primefaces и JSF. Поэтому, когда я щелкаю по нему, XHTMLRequest отправляется конечной точке XHML. Ответ (справа) - не более чем ID или что-то в этом роде, также метод POST, а тело - FormData, в котором есть неважные вещи. Думаю, через несколько секунд новая страница загружается с вложенным PDF-файлом

The endpoint and the response

Но после проверки страницы у нее есть только пустое тело The document of the generated PDF

Но если я go на вкладке источников на devtools, я вижу this enter image description here

Содержимое представляет собой строку в кодировке base64, которая при декодировании в файл PDF приводит к тому, что файл может быть просмотрен в средстве просмотра, поэтому основная цель здесь это скачать файл, я ха Мы попробовали несколько вещей.

• Перехватите запрос и ответ и скопируйте ответ, но ответ XHMLHttpRequest отличается, а не строка base64 • Переместите мышь на панель PDF, которая появляется в верхней части страницу и нажмите на кнопку загрузки, но это тоже не работает. • Попробуйте распечатать страницу в PDF, однако сценарии ломаются в режиме без головы при нажатии кнопки для создания PDF.

Я потерял, и я не знаю, что делать, или что я пропускаю или не вижу Любая помощь будет оценена, спасибо

...