我有一个简单的Python / Selenium脚本,必须等待4次检查。这些都在单独的线程上。在返回信息的第一个线程上,程序应继续执行,并杀死其余线程(如果可能)。
我有一个程序可以很好地创建线程,但是我不知道如何继续执行已执行的第一个线程。
这些是我的函数定义:
def wait_by(search_type, locator, timeout):
WebDriverWait(driver, timeout).until(EC.presence_of_element_located((search_type, locator)))
def multi_locator_verify_element(xpath_locator, css_locator, name_locator, id_locator, timeout):
element = ""
if xpath_locator != "":
tx = Thread(target=wait_by, args=(By.XPATH, xpath_locator, timeout))
tx.start()
if css_locator != "":
tc = Thread(target=wait_by, args=(By.CSS, css_locator, timeout))
tc.start()
if name_locator != "":
tn = Thread(target=wait_by, args=(By.NAME, name_locator, timeout))
tn.start()
if id_locator != "":
ti = Thread(target=wait_by, args=(By.ID, id_locator, timeout))
ti.start()
multi_locator_verify_element函数应该在第一个线程能够检索到正确的元素之后完成。
有人可以帮我吗?
此致