一尘不染

使用Selenium WebDriver访问和处理Chrome扩展程序弹出窗口

selenium

我正在尝试使用Selenium Webdriver安装IBM DAP
chrome扩展。我无权访问crx文件。因此,我尝试通过chrome网站商店直接将其安装为插件,如下所示:

browser = webdriver.Chrome()
browser.get('https://chrome.google.com/webstore/detail/dynamic-assessment-plugin/fnapgcgphlfhecijolobjodbbnjjpdga')
browser.maximize_window()
browser.implicitly_wait(5)
browser.find_element_by_css_selector("body > div.F-ia-k.S-ph.S-pb-qa > div.h-F-f-k.F-f-k > div > div > div.e-f-o > div.h-e-f-Ra-c.e-f-oh-Md-zb-k > div > div").click()
browser.switch_to_alert().accept()

但是此代码无法访问弹出窗口,并且无法单击“添加扩展名”按钮。如何访问弹出窗口并单击“添加扩展名”?


阅读 526

收藏
2020-06-26

共1个答案

一尘不染

遵循@Navarasu解决方案后,我从此处复制了pyrobot.py文件。对我来说,它工作得很好。

from pyrobot import Robot
from selenium import webdriver
import time

browser = webdriver.Chrome()
browser.get('https://chrome.google.com/webstore/detail/dynamic-assessment-plugin/fnapgcgphlfhecijolobjodbbnjjpdga')
browser.maximize_window()
browser.implicitly_wait(15)
browser.find_element_by_css_selector("[aria-label='Add to Chrome']").click()

time.sleep(3)
rob = Robot()
rob.key_press('tab')
rob.key_press('enter')
2020-06-26