python selenium sendkey 在 chrome 中不起作用

python selenium sendkey doesn't work in chrome

我正在尝试通过发送快捷方式来启动某些浏览器 (Chrome) 功能 试了好几种方法都不行。

我按照以下步骤进行操作

初始化浏览器

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver import ActionChains

options = Options()
options.add_argument("--user-data-dir="+r"path_to_user_data")
options.add_experimental_option("excludeSwitches", ["enable-logging"])
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install())
                      ,options=options
                     )

通过动作链

ActionChains(driver).key_down(Keys.CONTROL).key_down('T').key_up('T').key_up(Keys.CONTROL).perform

通过send_key

driver.find_element(by=By.XPATH,value="/html/body").send_keys(Keys.CONTROL+"T")

但是没有用。这让我很困惑。为什么它不能工作?

要打开一个空白的新标签页,您可以使用以下方法:

driver.execute_script("window.open('');")

切换到新的 window

driver.switch_to.window(driver.window_handles[1])

可以打开一个新选项卡并通过一个命令切换到它

driver.switch_to.new_window()