作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我第一次使用 puppeteer,我想打开一个 google chrome 页面并导航到我安装的 chrome 扩展程序。我尝试启用 chrome 扩展程序,但是当我在 headless:false
模式下运行我的脚本时,浏览器弹出时没有我的扩展程序。
我的代码:
//my extension path
const StayFocusd = 'C:\\Users\\vasilis\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Extensions\\laankejkbhbdhmipfmgcngdelahlfoji\\1.6.0_0';
async function run(){
//this is where I try to enable my extension
const browser = await puppeteer.launch({
headless: false,
ignoreDefaultArgs: [`--disable-extensions-except=${StayFocusd}`,"--enable-automation"],
}
);
const page = await browser.newPage();
sleep(3000);
await browser.close();
}
run();
所以扩展没有加载,我没有得到任何错误或任何东西。我会很感激你的帮助
最佳答案
用您的 CRX 路径设置 --disable-extensions-except
启动标志是不够的,您还应该使用 --load-extension
来实际加载您的在打开的浏览器实例中扩展。
您似乎还错误地使用了 ignoreDefaultArgs
,而您本应使用 args
(就像这样,Chromium 确实与您的预期相反)。
puppeteer.launch
的正确用法:
const browser = await puppeteer.launch({
headless: false,
args: [
`--disable-extensions-except=${StayFocusd}`,
`--load-extension=${StayFocusd}`,
'--enable-automation'
]
})
您可以使用有关 Working with Chrome Extensions 的官方文档.
关于javascript - puppeteer 无法在浏览器中加载 chrome 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67049065/
我是一名优秀的程序员,十分优秀!