Selenium在使用send_keys值的函数参数时出现问题

时间:2016-02-24 21:53:10

标签: python-3.x selenium-webdriver selenium-chromedriver

我的问题涉及使用Selenium获取列表的值并使用send_keys将它们传递给WebElement。

假设list_item_1list_item_2是通过电子表格导入的,arg_1arg_2是每个列表中的特定项目:

def run(arg_1, arg_2):
  driver.get(URL_TO_SITE)
  form_element_1 = driver.find_element_by_id('ELEMENT_ID')
  form_element_2 = driver.find_element_by_id('ELEMENT_ID')

  form_element_1.send_keys(arg_1)
  form_element_2.send_keys(arg_2)
  ...
  action.perform()

运行此命令会出现错误:

  

File" /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/remote/webelement.py" ;,

     

第326行,在send_keys中   对于范围内的i(len(val)):

     

TypeError:类型' WebElement'的对象没有len()

这似乎是使用函数参数作为send_keys参数而孤立的问题。这里有解决方法吗?

1 个答案:

答案 0 :(得分:1)

看起来arg_1arg_2WebElement个实例,您可能想要在send_keys()中发送文字

form_element_1.send_keys(arg_1.text)
form_element_2.send_keys(arg_2.text)