我想在验证变量不是"选择全部(1)")时添加新的行动。
例如:如果条件验证为真"选择全部(1)"我希望代码能够正常运行,最后只是填充并且现在正在执行。但是当验证不是"选择全部(1)"我想在循环开始之前添加一个新命令(现在从头开始,但没有添加特定的动作);缺少的命令是:
browser.find_element_by_xpath("//*[@id='content-column']/div[4]/form/div[1]/span/span[1]").click()
作为解释,当强制循环重启时,上面的代码有时必须使用。
这是缺少的代码:
validation = ""
while validation != "Select All (1)":
for row in rows:
browser.get('https://wwww.test')
time.sleep(2)
browser.find_element_by_xpath("//*[@id='agent_list_filter_id_2']").clear()
browser.find_element_by_xpath("//*[@id='agent_list_filter_id_2']").send_keys(row)
time.sleep(2)
browser.find_element_by_xpath("//*[@id='content-column']/div[4]/form/div[1]/span/span[1]").click()
time.sleep(2)
# validation starts here
validation = browser.find_element_by_xpath("//*[@id='action-select-all']/span/span").text
if validation != "Select All (1)": # or anything that is a falsy validation
continue
# validation finish here
time.sleep(2)
browser.find_element_by_xpath("//*[@id='action-select-all']/span/span").click()
time.sleep(2)
browser.find_element_by_xpath("//*[@id='action-delete']/span/span").click()
time.sleep(2)
browser.find_element_by_xpath("//*[@id='btn_save']").click()
感谢您的意见
答案 0 :(得分:0)
IIUC你只想添加这一行:
browser.find_element_by_xpath("//*[@id='content-column']/div[4]/form/div[1]/span/span[1]").click()
那么为什么不这样做?
# validation starts here
validation = browser.find_element_by_xpath("//*[@id='action-select-all']/span/span").text
if validation != "Select All (1)": # or anything that is a falsy validation
browser.find_element_by_xpath("//*[@id='content-column']/div[4]/form/div[1]/span/span[1]").click()
continue
# validation finish here
然后,您想要结束的命令将在循环重新启动之前执行。
如果这有助于你或者我误解了,请告诉我。