用selenium发送多个tab键

2024-05-08 21:43:06 发布

您现在位置:Python中文网/ 问答频道 /正文

如何发送多个含硒标签页?

当我跑步时:

uname = browser.find_element_by_name("text")
uname.send_keys(Keys.TAB)

选择下一个元素。当再次执行uname.send_keys(Keys.TAB)时,不会发生任何事情-实际上uname中的下一个元素被选中->;因此它与运行一次时相同。

我怎样才能向前跳几次-基本上就像我要手动按标签多次?


Tags: textnamebrowsersend元素by标签element
3条回答
uname.send_keys(Keys.TAB,Keys.TAB,Keys.TAB..)

为我工作

使用Action Chains

from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains

N = 5  # number of times you want to press TAB

actions = ActionChains(browser) 
for _ in range(N):
    actions = actions.send_keys(Keys.TAB)
actions.perform()

或者,由于这是Python,您甚至可以:

actions = ActionChains(browser) 
actions.send_keys(Keys.TAB * N)
actions.perform()

我想你也可以写

uname.send_keys(Keys.TAB + Keys.TAB + Keys.TAB + ... ) 

如果您只有2个或3个命令要发送,那么它可能很有用。

相关问题 更多 >