如何防止在打开特定链接时从 Ubuntu chrome 弹出 xdg-open 对话框?

asc*_*ker 9 python ubuntu selenium google-chrome selenium-chromedriver

我正在尝试使用桌面网络 whatsapp(chrome、ubuntu)加入一个 whatsapp 组。当我点击加入群组时,它会显示下面的对话。我想从 chrome 中永远删除这个对话。在关闭 xdg-open 对话框后,我可以通过再次单击加入组来加入组。

我尝试了Reset chrome protocol_handler chrome,但没有运气。

我还尝试使用 python selenium 关闭对话,但没有使用以下代码。

               try:

                    WebDriverWait(browser, 3).until(EC.alert_is_present(),
                           'Timed out waiting for PA creation ' +
                           'confirmation popup to appear.')
                    #if it doe
                    alert = browser.switch_to.alert()
                    alert.accept()
                    print "alert accepted"
                except TimeoutException:
                    print "no alert"
                    pass
Run Code Online (Sandbox Code Playgroud)

有没有办法使用 python selenium 或在 chrome 安装中使用一些配置文件更改来关闭对话?

在此处输入图片说明

小智 7

此解决方案适用于 Google Chrome 84.0.4147.89,适用于特定类型的 xdg 链接。例如,如果有问题的链接是whatsapp://someurl,您可以使用:

sudo mkdir -p /etc/opt/chrome/policies/managed/ && echo '{ "URLWhitelist": ["whatsapp://*"] }' |sudo tee /etc/opt/chrome/policies/managed/whitelist.json
Run Code Online (Sandbox Code Playgroud)


wiz*_*awu 5

这是有关如何执行此操作的官方文档(https://support.google.com/chrome/a/answer/7532419 )。

@Eyal 的答案非常接近。相反,您应该设置该URLBlocklist字段。

sudo mkdir -p /etc/opt/chrome/policies/managed
cd /etc/opt/chrome/policies/managed
jq -n '.URLBlocklist=["whatsapp://*"]' | sudo tee blocklist.json
Run Code Online (Sandbox Code Playgroud)