在另一个元素中查找元素似乎没有按预期工作。
我有一个表,如果一行中的某些单元格为空,我想通过它迭代和更新记录。我正在获取要迭代的 webelement 列表。
它正确地遍历我通过使用打印语句确认的行。在每一行内,我想检查某个单元格是否为空,如果是则更新它。
for _ in range(len(total_records_to_update)):
for record in self.driver.find_elements(*XPATH):
try:
WebDriverWait(self.driver, 3).until(
lambda d: record.find_element_by_xpath('//td[10][normalize-space(.)="' + text_in_cell + '"]')
)
print("Cell is not empty, checking next one")
continue
except TimeoutException:
update_record()
break # page is refreshed, hence the outer loop
此代码仅更新第一条记录并跳过其余记录。我看到这些记录被迭代,但 WebDriverWait 立即返回 True。我还尝试了以下相同的结果:
WebDriverWait(record, 3).until(
EC.presence_of_element_located((
By.XPATH,
"//td[10][normalize-space(.)='" + text_in_cell + "']"
))
)
尚方宝剑之说
相关分类