python - 使用 selenium 打开两个以上选项卡

标签 python selenium

我目前正在使用 chrome(selenium) 来为我自动化一些东西。由于某种原因,我无法让 Selenium 打开另一个网页。

def gotoInventory():
   #WebDriverWait(driver,5)
   inventoryPS = driver.switch_to.window(driver.window_handles[1])
   inventoryPS

   openInventoryTab = driver.execute_script("window.open('https://sellercentral.amazon.com/inventoryplanning/dashboard','new window')")
   openInventoryTab

def loginProton():

    #Need to create a new tab to open proton mail  
    ActionChains(driver).key_down(Keys.CONTROL).send_keys('t').key_up(Keys.CONTROL).perform()
    #above code did not work

    #also tried browser.find_element_by_tag_name('body').send_keys(Keys.CONTROL + 't')

    openProtonTab = driver.execute_script("window.open('https://mail.protonmail.com/login','new window')")
    openProtonTab

由于某种原因, Selenium 总是在库存选项卡上打开网页,这不是我想要的。 protonMail 必须在其自己的选项卡上打开,而不是在 list 选项卡上打开。

任何帮助将不胜感激

最佳答案

出现此问题的原因是在两种情况下使用相同的窗口名称,即“新窗口”。您可以尝试在库存和质子案例中使用不同的窗口名称。另请注意,window.open 创建一个浏览器窗口。

关于python - 使用 selenium 打开两个以上选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59705818/

相关文章:

python - 如何在 Python 3.x 中禁用 chrome webdriver 上的调试器?

java - 从 maven-Selenium 测试中获取初始化程序错误中的异常

用于创建和显示所有字母组合的 Python 程序,从字典中的不同键中选择每个字母

python - 如何在 python 中使用 mmap 加载 json? (在 window 上)

java - Selenium 发送键不起作用

java - 通过Appium读取iOS toast消息

python - 如何在 matplotlib 中禁用 float

python - 测试多个值存储为列表的字典中是否存在特定的键和值

Python——使用 MySQLDB 从 For 循环插入记录

python - Selenium 与 Python : can't select inside <! DOCTYPE ... 过渡//EN>