我想点击绑在标签这个TD的链接。
我可以使用的onclick找到一个项目链接,但该名称来自血红蛋白A1c的变化,对糖化血红蛋白等,并的onclick没有唯一的ID搜索每次。
现在用这样的:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//td[contains(@onclick, '%s' )]" % testname))).click()
testname = 'A1c'
请试试这个:
testname= "a1c"
try:
elem = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, '//td[contains(translate(text(), "AC", "ac"), {})]/following-sibling::td[3]//td'.format(testname))))
except TimeoutException:
print("Element not found")
else:
elem.click()
说明:
//td[contains(translate(text(), "AC", "ac"), testname)]
:首先找到包含td
'A1C' 或 '糖化'(或 'A1C' 或 'A1C')一个text
元件。这里transalte()
是XPath函数将取代所有“A”和“C”与“一”和“C”。/following-sibling::td[3]//td
然后我们去那个td
元素,而你的情况是相同类型的第三同胞的兄弟,然后我们发现在它的子元素td
。请试试这个检查是否工作。
testname = "A1c"
element = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//td[text()[contains(.,'" + testname + "')]]")))
element.click