前言

最近在使用Playwright写浏览器自动化。想安装一点常用的浏览器扩展,比如油猴、Header Editor啥的,结果拖进去一直提示无权限安装。查了下官方文档,依旧没有进展。

操作步骤

  1. 将要安装的插件后缀名改为zip并解压到独立文件夹;

  2. 在Playwright浏览器的启动参数指定插件路径:

    e_path1 = "path/to/your/extracted/extension1"
    e_path2 = "path/to/your/extracted/extension2"

    chromium = playwright.chromium
    self.context = chromium.launch_persistent_context(
    user_data_dir=utils.sub_folder(Folder.BROWSER_DATA),
    headless=False,
    proxy=proxy_object,
    ignore_default_args=["--enable-automation"],
    args=[
    "--noerrdialogs",
    "--no-sandbox",
    f"--disable-extensions-except={e_path1},{e_path2}",
    f"--load-extension={e_path1},{e_path2}"
    ]
    )
  3. 完毕~

小问题

对于一些检测自身安全性的插件(如油猴),每次开启浏览器时会提示“签名非官方”,并禁用所有js脚本。

一个解决方法是到你电脑已安装该插件的浏览器数据目录进行拷贝。

  • 首先查询浏览器扩展的唯一ID:CrxDL,如油猴为:dhdgffkkebhmkfjojejmpbldmpobfkfo
  • 记下ID,用Everything全盘搜索。可能有几个重名的,看一下就行
  • 同上步骤,复制到新的文件夹,再以参数形式传入路径。