Как проверить переданный параметр для функции?

Концепция была такая, я работая с парсером (selenium, webdriver, chrome) построил функцию ожидания css свойств на сайте, принимала она ожидаемые значение для свойств и сами свойства, но не всегда мне приходилось ожидать этих свойств несколько, из за этого одно передаваемое свойство мне каждый раз приходилось заварачивать в список или другой набор чтобы через цикл с ним работать, как можно было оптимально построить код на проверку передаваемого параметра непосредственно в самой функции (css_param)

def property_waiting(css_param, delay, limit, message, *keys):

    def actions():
        time.sleep(delay)
        browser.refresh()
        browser.implicitly_wait(30)

    locators, values = keys
    if not isinstance(locators, tuple): locators = [keys[0]]
    if not isinstance(values, tuple): values = [keys[1]]

    result_values = []
    count = 0
    flag = True
    while flag:
        for x in range(len(locators)):
            try:
                arg_value = (waiting(locators[x], 120)).get_property(css_param)
            except StaleElementReferenceException:
                actions()
            try:
                if values[x] == arg_value or values[x] in arg_value:
                    result_values.append(True)
                else:
                    result_values.append(False)
                    actions()
            except TypeError:
                result_values.append(False)
                actions()
            
        if False not in result_values: flag = False
        result_values.clear()
        if count > limit: raise ValueError(f"TIMEOUT... {message}")
        count += 1
    print(f"PARAMETER: ({css_param}), RETURNED: ({values}), CONTINUE...")

P.S. я junior в python простите вдруг за некую не формальность


Ответы (0 шт):