Firefix如何设置代理
Firefox不像Chromium可以有命令行参数可以启动。在用launch函数时候要用firefox_user_prefs,设置如下,
browser = await playwright.firefox.launch(
firefox_user_prefs={
"security.cert_pinning.enforcement_level": 0, #固定
"security.tls.version.min": 1, #固定
"network.stricttransportsecurity.preloadlist": False, #固定
"network.proxy.http": "abc.com",
"network.proxy.http_port": 80,
"network.proxy.ssl": "abc.com",
"network.proxy.ssl_port": 80,
"network.proxy.share_proxy_settings": True,
"network.proxy.type": 1,
},
headless=False,
slow_mo=5000,
timeout=30000,
)
和浏览器设置里网络设置对应关系如下,
前三条都是关于https的设定,固定这样写,
"security.cert_pinning.enforcement_level": 0, #固定
"security.tls.version.min": 1, #固定
"network.stricttransportsecurity.preloadlist": False, #固定
如何找到proxy相关的属性名
在firefox的地址栏输入about:config,
然后再搜索栏里搜索proxy
network.proxy.ftp、network.proxy.ftp_port 对应的是网络设置里的ftp设置。
network.proxy.socks、network.proxy.socks_port 对应的是网络设置里的socks设置。
这些属性名,可以根据需要写在lanuch函数的firefox_user_prefs字典里面。
另外注意,firefox_user_prefs的值如果是数值,一定不要用引号括起来!
如果代理不支持https,这3行不写。
"network.proxy.ssl": "abc.com",
"network.proxy.ssl_port": 80,
"network.proxy.share_proxy_settings": True,