Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何禁用弹出窗口阻止程序?_Javascript_Node.js_Puppeteer - Fatal编程技术网

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请和我分享这个错误?