首页 > 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
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板