【playwright】新一代自动化测试神器playwright+python系列课程69_不太用之proxy设置代理

Proxy设置代理

工作中如果访问被测系统时需要设置代理,playwright框架下可以通过添加proxy 参数设置代理。本文就来总结一下proxy参数如何设置代理。

1、launch 启动全局代理
launch 启动的时候设置全局代理,以下是示例:
不需要身份验证:

browser = p.chromium.launch(proxy={'server': 'http://ip:port'})

需要身份验证:

browser = p.chromium.launch(proxy={'server': 'http://ip:port', 'username':'用户名', 'password':'密码'})

proxy 参数说明
proxy 传 dict 类型,可以设置的参数有

server ;代理服务器地址。例如,支持HTTP和SOCKS代理http://myproxy.com:3128或socks5://myproxy.com:3128。缩写myproxy.com:3128被认为是HTTP代理
bypass 可选,逗号分隔域以绕过代理,例如“.com、chromium.org、.domain.com”。
username 可选,如果HTTP代理需要身份验证,则使用用户名。
password 可选,如果HTTP代理需要身份验证,则使用密码。

2、context上下文设置代理

context = browser.new_context(proxy={‘server’: ‘http://ip:port’})

需要注意的是,对于Windows上的Chromium浏览器需要launch设置全局代理,对于firefox 和 webkit 系列浏览器,可以不用在launch设置proxy。如果launch和上下文同时设置了proxy代理,会使用上下文中设置的代理。

3、new_page() 设置代理
注意,基于 context 创建的的new_page() 是没有proxy参数的,
基于browser 创建的new_page() 有proxy参数。

from playwright.sync_api import Playwright, sync_playwright
with sync_playwright() as playwright:
    browser = playwright.firefox.launch(headless=False)
    page = browser.new_page(proxy={'server': 'http://ip:port'})

4、非无痕模式启动浏览器launch_persistent_context
非无痕模式启动浏览器只能在launch_persistent_context()添加proxy参数

from playwright.sync_api import Playwright, sync_playwright
with sync_playwright() as playwright:
    context = playwright.chromium.launch_persistent_context(
       proxy={'server': 'http://ip:port'}}
    )
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值