Bonjour,

j'ai dans mon code une suite de try/except qui font la même chose avec des arguments différents.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 ?