【问题标题】:Using multiple send_keys() in Selenium Python not working在 Selenium Python 中使用多个 send_keys() 不起作用
【发布时间】:2017-04-05 10:44:35
【问题描述】:

我正在使用 Splinter 和 Python 来自动化网站。我可以在 Selenium 中使用 send_keys() 方法,但不能一次发送多个密钥,例如 browser.driver.find_element_by_name('q').send_keys(Keys.CONTROL + 't')

没有发生错误或异常,但代码未按预期工作。

import time
from selenium import webdriver
from splinter import Browser
from selenium.webdriver.common.keys import Keys

executable_path = {'executable_path':'C:/Users/UserName/Downloads/chromedriver_win32/chromedriver.exe'}
options = webdriver.ChromeOptions()
options.add_argument("--start-maximized")
browser = Browser('chrome', **executable_path, options=options)

browser.visit('https://google.com/')
time.sleep(4)

#This is working
browser.driver.find_element_by_name('q').send_keys('hello world')

#This also works
browser.driver.find_element_by_name('q').send_keys(Keys.ENTER)

#Not working
browser.driver.find_element_by_name('q').send_keys(Keys.CONTROL + 't')

#Not working
browser.driver.find_element_by_name('body').send_keys(Keys.CONTROL + 'w')

我已尝试链接 send_keys() 方法,但这似乎也不起作用。

#Not working
 browser.driver.find_element_by_name('body').send_keys(Keys.CONTROL).send_keys('t')

这个链接方法抛出异常:

Traceback (most recent call last):
  File "C:/Python Automation/Test 1/swap.py", line 18, in <module>
    browser.driver.find_element_by_name('q').send_keys(Keys.CONTROL).send_keys('t')
AttributeError: 'NoneType' object has no attribute 'send_keys'

【问题讨论】:

    标签: python selenium automation splinter


    【解决方案1】:
    1. 是的,您不能在一个链中使用多个 send_keys() 方法

    2. chromedriver 暂时不支持使用组合键

    您可以尝试使用例如Firefox 而不是Chrome 或以下解决方法:

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

    打开新标签而不是

    browser.driver.find_element_by_name('q').send_keys(Keys.CONTROL + 't')
    

    driver.close()
    

    关闭标签而不是

    browser.driver.find_element_by_name('body').send_keys(Keys.CONTROL + 'w')
    

    【讨论】:

      猜你喜欢
      • 2021-02-01
      • 1970-01-01
      • 2022-12-18
      • 1970-01-01
      • 2016-04-12
      • 2021-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多