Javascript 如何禁用弹出窗口阻止程序?
目前,我面临一个问题。如果我使用Javascript 如何禁用弹出窗口阻止程序?,javascript,node.js,puppeteer,Javascript,Node.js,Puppeteer,目前,我面临一个问题。如果我使用headless:false访问页面,一切都很好。而headless:true页面检测到弹出窗口阻止程序已启用,因此我无法继续其余操作 这是我的浏览器配置: const browser = await puppeteer.launch({ args: ["--disable-popup-blocking", "--allow-popups-during-page-unload"], headless: true }); const page
headless:false
访问页面,一切都很好。而headless:true
页面检测到弹出窗口阻止程序已启用,因此我无法继续其余操作
这是我的浏览器配置:
const browser = await puppeteer.launch({
args: ["--disable-popup-blocking", "--allow-popups-during-page-unload"],
headless: true
});
const page = await browser.newPage();
await page.setExtraHTTPHeaders({
"Accept-Language": "en-GB,en-US;q=0.9,en;q=0.8"
});
await page.setUserAgent(
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36"
);
await page.setJavaScriptEnabled(true);
await page.setBypassCSP(true);
await page.goto(URL);
有没有办法禁用弹出窗口阻止程序?只需禁用弹出窗口即可。我的意思是浏览器上下文与JS相同,因此创建一个helper方法来调用下一个脚本:
wait page.evaluate(()=>document.alert=window.alert=alert=()=>{};)
只需禁用弹出窗口。我的意思是浏览器上下文与JS相同,因此创建一个helper方法来调用下一个脚本:
wait page.evaluate(()=>document.alert=window.alert=alert=()=>{};)
我无法想象chrome上的默认弹出窗口阻止功能。这通常是一个插件,对吗?您使用的二进制文件是什么?它是你自己的浏览器吗?您应该为此下载一个chrome二进制文件。@unfollors我正在使用内置的chromiumLooks,就像您启用了两个不同的参数一样。您是否尝试启用或禁用弹出窗口?你需要那个弹出窗口还是不需要?@kirill.z谢谢你帮助兄弟,这实际上是一个已知的问题bug@OysterD3请与我分享这个错误?我无法想象chrome上默认的弹出窗口阻止。这通常是一个插件,对吗?您使用的二进制文件是什么?它是你自己的浏览器吗?您应该为此下载一个chrome二进制文件。@unfollors我正在使用内置的chromiumLooks,就像您启用了两个不同的参数一样。您是否尝试启用或禁用弹出窗口?你需要那个弹出窗口还是不需要?@kirill.z谢谢你帮助兄弟,这实际上是一个已知的问题bug@OysterD3请和我分享这个错误?