確保Puppeteer PDF 產生完成頁面載入
使用Puppeteer 時,在產生PDF 之前等待網頁完全載入是很重要的至關重要的。提供的 Python 腳本旨在實現此目的,但需要「延遲」以確保所有內容都存在。
使用 Page.waitForNavigation() 和 Page.waitForSelector()
更有效的方法是使用 Puppeteer 的 page.waitForNavigation() 方法。它等待頁面進行導航,確保新頁面完全加載後再繼續。這是腳本的更新版本:
<code class="python">await page.goto(fullUrl, { waitUntil: 'networkidle0', }) await page.type('#username', 'scott') await page.type('#password', 'tiger') await page.click('#Login_Button') await page.waitForNavigation({ waitUntil: 'networkidle0', }) await page.pdf({ path: outputFileName, displayHeaderFooter: True, headerTemplate: '', footerTemplate: '', printBackground: True, format: 'A4', })</code>
處理動態內容
如果要在PDF 中捕獲特定動態元素,則page.waitForSelector可以使用()方法。它等待指定的選擇器變得可見,確保在生成PDF 之前呈現所需的內容:
<code class="python">await page.waitForSelector('#example', { visible: True, })</code>
透過合併這些方法,您可以在頁面完全加載後產生PDF 報告,而無需求助手動延遲。這可以提高效能並捕獲 PDF 報告中的所有必要內容。
以上是在使用 Puppeteer 產生 PDF 之前如何確保頁面載入完整?的詳細內容。更多資訊請關注PHP中文網其他相關文章!