+
28
-

playwright如何加载本地chrome浏览器的中网站的cookie数据?

playwright如何加载本地chrome浏览器的中网站的cookie数据?


网友回复

+
24
-

使用 Playwright 加载本地 Chrome 浏览器的 Cookie

Playwright 可以通过几种方式加载本地 Chrome 浏览器的 Cookie 和其他状态数据。以下是几种常用方法:

方法一:使用用户数据目录

最直接的方法是指定 Chrome 的用户数据目录,这样 Playwright 可以直接使用已有的配置文件、Cookie、扩展等:

from playwright.sync_api import sync_playwright

def use_chrome_profile():
    with sync_playwright() as p:
        # 指定 Chrome 用户数据目录
        user_data_dir = r"C:\Users\wangbo\AppData\Local\Google\Chrome\User Data"

        # 启动浏览器时使用该目录
        browser = p.chromium.launch_persistent_context(
            user_data_dir=user_data_dir,
            headless=False,
            channel="chrome"  # 使用已安装的 Chrome 而不是 Playwright 内置的 Chromium
        )

        page = browser.new_page()
        page.goto("https://www.baidu.com")

        # 此时页面应该已经包含了你的登录状态和 Cookie
        print("已加载本地 Chrome 配置文件")

        # 等待用户操作
        input("按回车键继续...")

        browser.close()

if __name__ == "__main__":
    use_chrome_profile()

方法二:导出 Cookie 并手动设置

如果你只需要 Cookie 而不需要完整的用户配置:

from playwright.sync_api import sync_playwright
import json

def set_cookies_from_file():
    with sync_playwright() as p:
        browser = p.chromium.launch(headless=False)
        context = browser.new_context()
        page = context.new_page()

        # 从文件加载 Cookie
        with open('cookies.json', 'r') as f:
            cookies = json.load(f)

        # 设置 Cookie
        cont...

点击查看剩余70%

我知道答案,我要回答