如何在NoDriver启动的Chromium中启用已安装的扩展程序
如何在NoDriver启动的Chromium中启用已安装的扩展程序
我太懂这种糟心的情况了——手动打开Chromium时,之前装的扩展明明正常生效,结果用NoDriver写脚本启动,直接跳进隐身模式,扩展全没了,完全不是想要的效果!别着急,咱们一步步来解决:
核心问题所在
NoDriver默认会启动一个临时的隐身会话,这个会话不会读取你手动使用Chromium时的默认用户配置(包括你安装的扩展、书签这些个性化设置),所以才会出现扩展消失的情况。咱们的解决思路就是让NoDriver加载你已经配置好扩展的那个用户数据目录,同时禁用隐身模式。
具体操作步骤
找到Chromium的默认用户数据目录
在macOS ARM64系统上,Chromium的默认用户数据目录一般是:~/Library/Application Support/Chromium/
你可以手动确认一下:打开访达,按下Cmd+Shift+G组合键,粘贴这个路径就能直接跳转到目标文件夹。修改NoDriver启动代码
在初始化浏览器的时候,把找到的用户数据目录传进去,同时明确禁用隐身模式。修改后的代码示例如下:import NoDriver async def worker(emailStr): # 替换成你的Chromium用户数据绝对路径(也可以用展开后的路径) user_data_dir = "/Users/你的用户名/Library/Application Support/Chromium/" # 启动浏览器时传入用户数据目录,并禁用隐身模式 browser = await NoDriver.start( user_data_dir=user_data_dir, incognito=False ) # 后续的页面操作逻辑... page = await browser.get("https://example.com")
额外小提示
如果你不想让脚本的操作影响到你手动使用Chromium的配置,可以把默认的用户数据目录复制一份到自定义路径,然后在脚本里指定这个复制后的路径,这样脚本和手动启动的环境就完全隔离了,比如:
user_data_dir = "./my_chromium_script_profile/"
这样调整之后,NoDriver启动的Chromium就会和你手动打开的一样,自动加载你之前安装的所有扩展啦!
内容来源于stack exchange
相关产品推荐
相关产品推荐

