const browser = await puppeteer.launch({
product: 'firefox',
extraPrefsFirefox: {
'network.proxy.type': 1,
'network.proxy.http': 'localhost',
'network.proxy.http_port': 8080,
'network.proxy.ssl': 'localhost',
'network.proxy.ssl_port': 8080,
// 'network.proxy.share_proxy_settings': true,
// note: this setting doesn't work with puppeteer. When I inspected
// the preferences saved in the profile directory, it seems this
// setting is used by firefox to internally set the ssl proxy
// preferences. This internal process doesn't occur with puppeteer
// so instead we need to declare the ssl prefs separately.
},
})
4条答案
按热度按时间8hhllhi21#
Firefox中的代理可以通过首选项进行配置。这里列出了它们的默认值:
字符串
要真正使用它们,请将Firefox作为选定产品安装官方
puppeteer
node.js包(请注意,puppeteer-firefox
已弃用)。然后可以通过extraPrefsFirefox
指定对puppeteer.launch()
的调用的首选项。这里是puppeteer存储库中必要步骤的示例。h43kikqp2#
不幸的是,Firefox中没有“代理服务器”参数。
但是,您可以拦截请求并使用puppeteer-proxy库设置代理。
这里有一个例子。
字符串
它也可以在Chrome和Firefox中运行。
kdfy810k3#
在Yevhen的例子中,你可能会遇到使用import语句的问题。相反,我建议使用以下语句:
字符串
hpxqektj4#
Henrik's answer让我走上了正确的道路。以下是对我有效的方法
字符串
为了找到所需的首选项所需的键/值对,我访问了about:config并通过'network. proxy'进行过滤。然后我通过gui手动更改了我关心的首选项,并返回about:config查看修改了哪些值。例如,
'network.proxy.type': 1
对应于gui的Manual proxy configuration
单选按钮。