Setting specific chrome flags in puppeteer (enable and disable)
Follow these steps, please.
puppeteer.defaultArgs()
will provide you all default flags. You this method to get them, then filter the array to remove flags that you want to.https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#puppeteerdefaultargsconst args = puppeteer.defaultArgs().filter(arg => arg !== '--enable-asm-webassembly')
Now, add some flags to the array.
args.push('--enable-webgl-draft-extensions', '--shared-array-buffer')
Enable
ignoreDefaultArgs
flag when launch a new instance of browser. Also, provide the list of arguments we made above.const browser = await puppeteer.launch({ ignoreDefaultArgs: true, args })
await puppeteer.launch({ args: [ '--disable-features=LookalikeUrlNavigationSuggestionsUI' ]})
Try something like this.
You can launch Chromium, switch your flag and then go "chrome://version/", to see what has changed in the command line.
In my case, when i switch "Navigation suggestions for lookalike URLs" to disabled,relaunch Chrommium, then i found --disable-features=LookalikeUrlNavigationSuggestionsUI
in the command line。
Previous answer already points in the right direction, but it can be made simpler. The key point is that you need to split your arguments into an array. The code can simply be:
const browser = await puppeteer.launch({args:["--flag-switches-begin", "--enable-webgl-draft-extensions", "--enable-features=SharedArrayBuffer", "--disable-features=AsmJsToWebAssembly", "--flag-switches-end"]});