selenium remplacer Expected_Conditions par une variable
Bonjour,
j'ai dans mon code une suite de try/except qui font la même chose avec des arguments différents.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| try:
Menu = WebDriverWait(browser, 5).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".export-btn")))
except TimeoutException:
_quitting()
Menu.click()
_waiting("download")
try:
DL = WebDriverWait(browser, 5).until(EC.element_to_be_clickable((By.ID, "calendar-export-pdf")))
except TimeoutException:
_quitting()
if not os.path.isdir(dlDir):
print("creating temporary download directory")
os.mkdir(dlDir)
print("downloading file...",end='')
DL.click() |
je pense faire une boucle sur chaque argument :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| method = { "List":"LINK_TEXT","Menu":"CSS_SELECTOR","DL":"ID" }
link = { "List":"List view","Menu":".export-btn","DL":"calendar-export-pdf" }
for fn in method.keys():
print(_builder(fn))
_waiting(fn)
by = "By.%s, %s" % (method[fn], link[fn])
try:
t = WebDriverWait(browser, 5).until( EC.element_to_be_clickable (( By. + method[val] + , + link[val] )) ) # <- ICI
except TimeoutException:
_quitting()
t.click() |
comment faire ?