Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Keys.ALT和Keys.LEFT#u ALT不';在硒中不起作用?(Python)_Python_Selenium - Fatal编程技术网

Keys.ALT和Keys.LEFT#u ALT不';在硒中不起作用?(Python)

Keys.ALT和Keys.LEFT#u ALT不';在硒中不起作用?(Python),python,selenium,Python,Selenium,我尝试使用ActionChains复制带有快捷键ALT+D和ALT+ENTER的选项卡。这是来自用户5168011的代码: action_chains = ActionChains(driver) action_chains.key_down(Keys.ALT).send_keys('d').perform() action_chains.key_down(Keys.ENTER).perform() action_chains.key_up(Keys.ALT).key_up(Keys.ENTER

我尝试使用ActionChains复制带有快捷键ALT+D和ALT+ENTER的选项卡。这是来自用户5168011的代码:

action_chains = ActionChains(driver)
action_chains.key_down(Keys.ALT).send_keys('d').perform()
action_chains.key_down(Keys.ENTER).perform()
action_chains.key_up(Keys.ALT).key_up(Keys.ENTER).perform()
然而,它就是不起作用。我尝试了使用Chrome和Firefox作为web驱动程序的代码,尝试了Linux和Win10,还尝试了Keys.ALT和Keys.LEFT_-ALT,甚至使用send_-Keys函数发送ALT和LEFT_-ALT的Unicode。但是看起来它根本没有按ALT键

我怀疑ALT键没有被按下是因为我的另一个测试:如果我选择一个输入框作为
元素
,并使用代码:

action_chains.key_down(Keys.ALT, element=element).key_down(Keys.SHIFT, element=element).send_keys('d').perform()
它将在文本框中显示“D”。然而,实际上,如果我点击文本框并按ALT+SHIFT+d,它将不会显示任何内容。所以我建议
key\u down(Keys.ALT,element=element)
不起作用,它看起来就像
action\u.key\u down(Keys.SHIFT,element=element)。send\u Keys('d')。perform()
一样,所以它会在文本框中显示“d”


顺便说一句,在测试之后,我发现我的Keys.SHIFT和Keys.CONTROL工作得很好,所以问题可能只是针对ALT。这是因为selenium版本吗?我搜索了Internet,没有发现类似的问题…

你想在新选项卡中打开相同的URL吗?实际上我想使用ALT键做其他事情,这只是一个示例。我真正想做的是在chrome中添加“复制选项卡快捷键”扩展,并使用ALT+SHIFT+D复制选项卡,同时保留复制选项卡的历史记录。任何人都可以运行上面的代码?我认为问题在于环境,也许我需要操作系统、selenium版本、驱动程序版本、Chrome版本或Firefox版本的信息?