Playwright Python 持久化浏览器上下文

Playwright的launch_persistent_context方法,用于启动带有用户数据的持久化浏览器上下文,以便在已登录状态下无需重复登录。方法参数包括用户数据目录、接受下载、无头模式等。

简介
在Playwright中,launch_persistent_context方法用于启动一个持久化的浏览器上下文。这个方法的主要作用是启动一个浏览器实例,并加载用户数据,可以在本地已经登录过网站的情况下,下次打开网站不需要登录继续操作。

在使用launch_persistent_context方法时,可以通过user_data_dir参数指定用户数据目录,这个目录包含了用户的cookies,所以你只要登录过,就会自动保存。这样只要代码打开网站,如果不能通过代码自动登录(可能有一些验证码什么的),可以断点后手工去登录一次,也会记住cookies。下次代码再打开就不需要登录了

此外,launch_persistent_context方法还有一些其他的参数,例如accept_downloads用于接收下载事件,headless用于设置无头模式,channel用于指定浏览器类型,默认为chromium

演示
以下是一个使用launch_persistent_context方法的示例代码:

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch_persistent_context(
        user_data_dir=r"D:\chrome_data\demo",
        accept_downloads=True,
        headless=False,
        bypass_csp=True,
        slow_mo=1000,
        channel="chrome"
    )
    page = browser.new_page()
    page.goto("https://www.baidu.com")
    # do ...
    browser.close()



注意事项
需要注意的是,由于launch_persistent_context方法已经创建了一个浏览器上下文,所以不能再使用browser.new_context()方法创建新的上下文。只能创建新的页面对象。

playwright.chromium.launch_persistent_context()
这是Python Playwright框架中的一个方法,用于启动一个持久化的浏览器上下文。以下是该方法的参数意义:

user_data_dir: 用于指定用户数据目录的路径,比如浏览器缓存和cookie。
channel: 可选参数,用于指定要使用的浏览器通道,例如 “chrome” 或 “firefox”。
executable_path: 可选参数,指定浏览器可执行文件的路径。
args: 可选参数,指定浏览器启动时的命令行参数。
ignore_default_args: 可选参数,指定是否忽略默认的命令行参数。
handle_sigint: 可选参数,指定是否处理 SIGINT 信号。
handle_sigterm: 可选参数,指定是否处理 SIGTERM 信号。
handle_sighup: 可选参数,指定是否处理 SIGHUP 信号。
timeout: 可选参数,指定操作超时时间。
env: 可选参数,指定环境变量。
headless: 可选参数,指定是否以无头模式运行浏览器。
devtools: 可选参数,指定是否打开 Chrome DevTools。
proxy: 可选参数,指定代理设置。
downloads_path: 可选参数,指定下载文件的保存路径。
slow_mo: 可选参数,指定操作速度减慢的时间(以毫秒为单位)。
viewport: 可选参数,指定视口大小。
screen: 可选参数,指定屏幕的大小。
no_viewport: 可选参数,指定是否禁用视口。
ignore_https_errors: 可选参数,指定是否忽略 HTTPS 错误。
java_script_enabled: 可选参数,指定是否启用 JavaScript。
bypass_csp: 可选参数,指定是否绕过 Content-Security-Policy。
user_agent: 可选参数,指定自定义 User-Agent 字符串。
locale: 可选参数,指定加载页面时的地区语言。
timezone_id: 可选参数,指定所需页面的时区。
geolocation: 可选参数,指定要设置的地理位置。
permissions: 可选参数,指定在页面上授予的权限列表。
extra_http_headers: 可选参数,指定 HTTP 请求头部。
offline: 可选参数,指定浏览器是否应处于脱机状态。
http_credentials: 可选参数,指定 HTTP 凭据。
device_scale_factor: 可选参数,指定设备缩放因子。
is_mobile: 可选参数,指定是否模拟移动设备。
has_touch: 可选参数,指定是否模拟触摸事件。
color_scheme: 可选参数,根据用户首选的颜色方案指定默认的颜色方案。
reduced_motion: 可选参数,指定页面是否应该减少动画效果。
forced_colors: 可选参数,指定强制使用特定颜色的模式。
accept_downloads: 可选参数,指定是否自动接受下载。
traces_dir: 可选参数,用于存储跟踪文件的目录。
chromium_sandbox: 可选参数,指定是否启用 Chromium 沙盒。
record_har_path: 可选参数,指定 HAR 文件的保存路径。
record_har_omit_content: 可选参数,指定是否省略 HAR 文件中的内容。
record_video_dir: 可选参数,指定视频的保存路径。
record_video_size: 可选参数,指定视频的大小。
base_url: 可选参数,指定用于解析相对 URL 的基础 URL。
strict_selectors: 可选参数,指定是否启用严格选择器模式。
service_workers: 可选参数,指定如何处理 Service Worker。
record_har_url_filter: 可选参数,指定筛

总结
总的来说,launch_persistent_context方法在Playwright中提供了一种方式,可以在启动浏览器时加载用户数据,这对于需要在本地已经登录过网站的情况下,下次打开网站不需要登录继续操作的场景非常有用。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值