You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Chrome 139及以上版本中使用Playwright加载扩展?

在Chrome 139+版本中使用Playwright加载扩展的解决方案

无需切换到CFT(Chrome for Testing)或Chromium,直接使用官方Chrome 139+版本时,可通过以下配置在Playwright中加载扩展:

核心配置逻辑

结合Chrome的实验特性与Playwright的启动参数,对齐Selenium的可行方案:

  • 启用enableExtensionTargets实验特性,解锁扩展加载权限
  • 保留--disable-features=DisableLoadExtensionCommandLineSwitch参数,绕过Chrome 137+对--load-extension的限制
  • 排除Playwright默认的--disable-extensions-except参数,避免扩展被禁用

代码示例

JavaScript

const { chromium } = require('playwright');

(async () => {
  const browser = await chromium.launch({
    args: [
      '--disable-features=DisableLoadExtensionCommandLineSwitch',
      '--load-extension=/绝对路径/到/你的/解压后扩展文件夹'
    ],
    ignoreDefaultArgs: ['--disable-extensions-except'],
    experimental: {
      enableExtensionTargets: true
    }
  });
  
  const context = await browser.newContext();
  const page = await context.newPage();
  
  // 执行你的页面操作逻辑
  
  await browser.close();
})();

Python

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(
        args=[
            "--disable-features=DisableLoadExtensionCommandLineSwitch",
            "--load-extension=/绝对路径/到/你的/解压后扩展文件夹"
        ],
        ignore_default_args=["--disable-extensions-except"],
        experimental={"enableExtensionTargets": True}
    )
    
    context = browser.new_context()
    page = context.new_page()
    
    # 执行你的页面操作逻辑
    
    browser.close()

注意事项

  • 扩展必须是本地已解压的文件夹,若为CRX格式需先手动解压
  • 路径需使用绝对路径,避免因相对路径导致加载失败
  • 该方案依赖Chrome的实验特性,未来版本可能存在变更风险,需关注Chrome官方更新

内容的提问来源于stack exchange,提问作者Harshit Pal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 04:42:04