无法使用python在具有Selenium的跨度之间更改文本

无法使用python在具有Selenium的跨度之间更改文本,python,selenium,automation,Python,Selenium,Automation,我正在自动化一个web进程,但遇到了一个问题,我有一个带有下拉按钮的html表单。我无法下拉按钮并更改值。我想告诉selenium在span标记之间更改文本,例如SomeText,因为下拉按钮会在这里更改值。问题是所有标记的名称都相同,我不知道如何告诉selenium如何更改所有值。我只能预先填充输入框。 我尝试了css选择器,按名称或类查找,但没有成功。我建议诱导WebDriverWait(),等待元素可以单击(),然后使用下面的xpath先单击下拉列表,然后基于文本单击元素 WebDrive

我正在自动化一个web进程,但遇到了一个问题,我有一个带有下拉按钮的html表单。我无法下拉按钮并更改值。我想告诉selenium在span标记之间更改文本,例如
SomeText
,因为下拉按钮会在这里更改值。问题是所有标记的名称都相同,我不知道如何告诉selenium如何更改所有值。我只能预先填充输入框。
我尝试了css选择器,按名称或类查找,但没有成功。

我建议诱导
WebDriverWait
(),等待
元素可以单击
(),然后使用下面的xpath先单击下拉列表,然后基于文本单击元素

WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.XPATH,"//div[@data-field-name='stage']"))).click()
WebDriverWait(driver,10).until(EC.presence_of_element_located((By.XPATH,"//ul[@class='chosen-results']//li[contains(.,'Closed')]"))).click()
您需要导入以下库

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

嘿,谢谢你!我测试过类似的东西。但当我尝试您的代码时,它会单击下拉菜单出现的位置,但似乎找不到跨度文本
raise TimeoutException(message,screen,stacktrace)selenium.common.exception.TimeoutException:message:
@uzdisral:你能检查
presence\u元素的位置吗。如果有帮助的话,我刚刚添加了另一张图片。值在灰色文本中(可能隐藏)?。但是看起来我可以通过索引来选择点击什么?是的,这是有效的:我认为这是不可能的。非常感谢,帮了大忙!这是一个随机问题,但我是否可以使用
WebDriverWait
清除输入字段中的值?假设有一个
SomeText
,它看起来像一个文本框,我可以用退格删除它。见上图,例如:电子邮件自动填充