Python 如何将值发送到输入类型为文本而不是选择的下拉列表?

Python 如何将值发送到输入类型为文本而不是选择的下拉列表?,python,selenium,combobox,selenium-chromedriver,dropdown,Python,Selenium,Combobox,Selenium Chromedriver,Dropdown,我试图自动化verizon站点的票证创建自动化 在这个站点中,我想将值发送到state字段的下拉框中。但是,不幸的是,没有一个解决方案对我有效。 我用python尝试了下面的代码,但没有成功 state = driver.find_element_by_xpath("//*[@id='combobox-1062-trigger-picker']").click() driver.find_element_by_xpath("//*[contains(text(), 'TX')]").click(

我试图自动化verizon站点的票证创建自动化

在这个站点中,我想将值发送到state字段的下拉框中。但是,不幸的是,没有一个解决方案对我有效。 我用python尝试了下面的代码,但没有成功

state = driver.find_element_by_xpath("//*[@id='combobox-1062-trigger-picker']").click()
driver.find_element_by_xpath("//*[contains(text(), 'TX')]").click()
我还尝试了以下代码

state = driver.find_element_by_xpath("//*[@id='combobox-1062-trigger-picker']")
state.send_keys('TX')
即使这个解决方案对我也不起作用

谁能给我一个有效的解决方案

谢谢,
Malleshappa Teli

在需要的地方在代码中应用隐式等待或流畅等待

隐式等待

driver.implicitly_wait(15)
WebDriverWait(driver, 3).until(EC.presence_of_element_located((By.XPATH, "//li[text()='TX']"))) 
显式等待

driver.implicitly_wait(15)
WebDriverWait(driver, 3).until(EC.presence_of_element_located((By.XPATH, "//li[text()='TX']"))) 
示例代码:

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

driver = webdriver.Chrome('/usr/local/bin/chromedriver')  # Optional argument, if not specified will search path.
driver.implicitly_wait(15) # implicit wait

driver.get("https://myverizonenterprise.verizon.com/vec/public/quicktasks/repairs/index.html#/repairsqf/tickets/create");


driver.find_element_by_xpath("//input[@name='state']").click()
#WebDriverWait(driver, 3).until(EC.presence_of_element_located((By.XPATH, "//li[text()='TX']"))) #Wait for specific element 
ActionChains(driver).move_to_element(driver.find_element_by_xpath("//li[text()='TX']")).perform()
driver.find_element_by_xpath("//li[text()='TX']").click()


driver.quit()

我收到驱动程序错误。通过xpath(“//li[text()='TX']”)查找元素。单击()此行。selenium.common.exceptions.elementnotinteractivatableexception:Message:element不可交互(会话信息:chrome=77.0.3865.90)@malleshappetali您尝试过上述代码吗?如果是这样的话,你能用完整的代码更新你的问题吗?试一下我答案中的代码,如果有,请告诉我errors@MalleshappaTeli它完全适合我,没有任何问题。我不知道为什么它对你不起作用。您可以发布您在计算机上尝试过的代码吗?driver=webdriver.Chrome(executable_path='chromedriver.exe')#可选参数,如果未指定,将搜索路径。driver.implicit_wait(15)#implicit wait driver.get(“);driver.find_element_by_xpath(//input[@name='state']”)。click()WebDriverWait(driver,3)。直到(EC.presence_of_element_位于((by.xpath,//li[text()='TX']))))#等待特定的元素驱动程序。find_by_xpath(//li[text()='TX trade'])click()driver.quit()