首頁 > web前端 > js教程 > 如何將變數傳遞給 Puppeteer 的 `page.evaluate()` 函數?

如何將變數傳遞給 Puppeteer 的 `page.evaluate()` 函數?

Linda Hamilton
發布: 2024-12-16 08:30:15
原創
880 人瀏覽過

How to Pass Variables to Puppeteer's `page.evaluate()` Function?

如何將變數傳遞到Puppeteer 中的評估函數

使用Puppeteer 評估頁面時,通常需要將變數傳遞到評估函數中以在頁面中使用頁面的上下文。為此,必須了解將變數傳遞到 page.evaluate() 函數的正確方法。

在提供的 Puppeteer 腳本中,嘗試將變數 evalVar 傳遞到評估函數連結不成功,導致在函數內存取時變數未定義。出現這種情況是因為變數無法直接傳遞到函數中。

解是將變數作為參數傳遞給求值函數。透過在 links 函數中新增以下更改,變數 evalVar 將在函數內傳遞和存取:

const links = await page.evaluate((evalVar) => {
  console.log('evalVar:', evalVar); // 2. should be defined now
  ...
}, evalVar); // 1. pass variable as an argument
登入後複製

請注意,在呼叫 page.evaluate() 時可以透過包含其他參數來傳遞多個變數。確保所有參數都可序列化為 JSON 或瀏覽器內物件的 JSHandle 非常重要。透過遵循這些準則,您可以成功地將變數傳遞到 Puppeteer 中的評估函數並在頁面上下文中存取它們。

以上是如何將變數傳遞給 Puppeteer 的 `page.evaluate()` 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板