Puppeteer使用puppeteer-page-proxy报错:useProxyPer[...]不是函数
问题描述
我正在使用Puppeteer,尝试通过puppeteer-page-proxy包实现每页设置代理,代码如下:
const puppeteer = require('puppeteer'); var useProxy = require('puppeteer-page-proxy'); var browser = await puppeteer.launch({}); const page = await browser.newPage(); useProxy(page, 'http://' + myProxy)
运行后报错:
useProxyPer[target.constructor.name](target, data); ^ TypeError: useProxyPer[target.constructor.name] is not a function
尝试替换为@lem0-packages/puppeteer-page-proxy包后,仍出现相同报错。已知该问题在Puppeteer 21.3.x版本存在,但21.2.x版本正常,当前使用的是Puppeteer 9.2.0,需要安装Puppeteer 21.2.x版本。
解决方法
要安装指定版本的Puppeteer 21.2.x,可执行以下命令:
- 使用npm安装指定小版本:
npm install puppeteer@21.2.1
- 使用yarn安装指定小版本:
yarn add puppeteer@21.2.1
若要安装21.2.x大版本下的最新小版本,可指定版本范围:
npm install puppeteer@^21.2.0
注意:安装前建议删除node_modules文件夹和package-lock.json(或yarn.lock)文件,重新执行安装命令,避免版本冲突。
内容的提问来源于stack exchange,提问作者user23463388
相关产品推荐
相关产品推荐

