Bagaimana untuk Memastikan Halaman Lengkap Sebelum Menjana PDF dengan Puppeteer?

DDD
Lepaskan: 2024-10-26 07:39:02
asal
734 orang telah melayarinya

How to Ensure Page Completion Before Generating PDFs with Puppeteer?

Menjana PDF dengan Puppeteer: Menunggu Penyiapan Halaman

Apabila membuat PDF daripada halaman web menggunakan Puppeteer, adalah penting untuk menunggu sehingga halaman dimuatkan sepenuhnya untuk memastikan kesempurnaan dan ketepatan dokumen yang dihasilkan. Mari kita mendalami cara untuk mencapai ini tanpa menggunakan kelewatan manual.

Kaedah page.waitForNavigation() menyediakan cara yang boleh dipercayai untuk menunggu acara navigasi halaman, termasuk pemuatan halaman awal. Dengan menggunakan pilihan networkidle0, kami menyatakan bahawa fungsi perlu menunggu sehingga tiada lagi sambungan rangkaian aktif.

<code class="javascript">await page.goto(fullUrl, {
  waitUntil: 'networkidle0',
});</code>
Salin selepas log masuk

Setelah halaman dimuatkan, kami boleh mengisi borang log masuk dan menyerahkannya.

<code class="javascript">await page.type('#username', 'scott');
await page.type('#password', 'tiger');
await page.click('#Login_Button');</code>
Salin selepas log masuk

Seterusnya, kami boleh menambah panggilan waitForNavigation() tambahan untuk memastikan proses log masuk selesai.

<code class="javascript">await page.waitForNavigation({
  waitUntil: 'networkidle0',
});</code>
Salin selepas log masuk

Akhir sekali, kami boleh meneruskan penjanaan PDF.

<code class="javascript">await page.pdf({
  path: outputFileName,
  displayHeaderFooter: true,
  headerTemplate: '',
  footerTemplate: '',
  printBackground: true,
  format: 'A4',
});</code>
Salin selepas log masuk

Jika anda menghadapi kes di mana kandungan dinamik tertentu perlu disertakan dalam PDF, anda boleh melengkapkan pendekatan ini dengan page.waitForSelector() untuk menunggu elemen tertentu muncul pada halaman sebelum menjana PDF.

<code class="javascript">await page.waitForSelector('#example', {
  visible: true,
});</code>
Salin selepas log masuk

Dengan menggunakan teknik ini, anda boleh memastikan bahawa Puppeteer menunggu halaman dimuatkan sepenuhnya sebelum menjana PDF, menghasilkan penjanaan dokumen yang komprehensif dan tepat.

Atas ialah kandungan terperinci Bagaimana untuk Memastikan Halaman Lengkap Sebelum Menjana PDF dengan Puppeteer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!