如何在打开特定链接的同时从Ubuntu chrome移除Open xdg-open对话框?

时间:2018-08-23 12:55:08

标签: python selenium google-chrome ubuntu selenium-chromedriver

我正在尝试使用桌面网络whatsapp(chrome,ubuntu)加入whatsapp组。当我单击“加入组”时,它将在下面显示对话框。我想从chrome中永久删除此对话框。在取消xdg-open对话框后,我可以通过再次单击加入组来加入该组。

我尝试Reset chrome protocol_handler chrome时没有运气。

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

               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

是否可以使用python硒或chrome安装中的某些配置文件更改来消除对话?

enter image description here

3 个答案:

答案 0 :(得分:6)

该解决方案适用于特定类型的xdg链接的Google Chrome 84.0.4147.89。例如,如果相关链接为whatsapp://someurl,则可以使用:

sudo mkdir -p /etc/opt/chrome/policies/managed/ && echo '{ "URLWhitelist": ["whatsapp://*"] }' |sudo tee /etc/opt/chrome/policies/managed/whitelist.json

答案 1 :(得分:0)

这是有关操作方法的官方文档(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

答案 2 :(得分:0)

这对我有用... 去 .local/share/applications/ 创建一个文件 .. 使用以下信息说whatsapp.desktop

[Desktop Entry]
Type=Application
Name=Whatsapp Scheme Handler
Exec=/opt/google/chrome/google-chrome %u
StartupNotify=false
MimeType=x-scheme-handler/whatsapp;

然后使用以下命令注册方案处理程序

     xdg-mime default whatsapp.desktop x-scheme-handler/whatsapp