有没有办法一次多次调用 JavaScript 中的函数?使用木偶师

Is there any way to call a function in JavaScript multiple times at once? Using puppeteer

使用Reactjs开发的网站,后台与以太坊智能合约交互

此智能合约需要一个 chrome 扩展(metamask)进行交易。

现在,在使用 puppeteer 时,它 运行 在 chrome 扩展不可用的 chromium 中。

我还想 运行 并行执行此合同。这意味着它 运行 一次多次使用相同的合同,以便了解当许多用户同时使用该网站时需要多长时间才能获得结果。

  1. 有什么方法可以在 puppeteer 中加载 chrome 扩展吗?
  2. 如何运行 javascript 一次多次归档?

加载扩展程序

已讨论 here,您可以使用 --disable-extensions-except 仅启用您要测试的扩展:

var options = {
  headless: false,
  args: [
    '--disable-extensions-except=/path/to/extension/',
    '--load-extension=/path/to/extension/',
  ]
}

要加载多个 chrome 扩展,您可以传递逗号分隔的列表;

var options = {
  headless: false,
  args: [
    '--disable-extensions-except=/path/to/ext1/, /path/to/ext2/, /path/to/ext3/'
  ]
}

请注意,它不会在 headless 模式下工作,您也不能自动执行扩展。

一次多次?

您可以使用相同的元掩码创建多个 pages/tabs,或创建 different browser sessions 以保持独立。