import working_database import parse_saby from validation import DataValid import scheduler def parse_data_in_list(dict_data: dict) -> list: """ argument: [{128513: ('fns', 'Уведомление о налогах для ЕНП', '01.07.22', None, '5.03')}, {...}] return: [[128513, 'fns', 'Уведомление о налогах для ЕНП', '01.07.22', None, '5.03'], [...]] """ result = [] for key_id, value_data in dict_data.items(): if len(value_data) != 5: continue result.append([key_id, *value_data]) return result def validate_data(list_data: list[list]) -> list: """ Функция принимает список списков, выполняет парсинг и валидацию с пмошью класса DataValid из файла validation.py. Возвращает распршеный валидный список словарей для БД. """ result = [] for intem_list in list_data: try: validated_data = DataValid.from_list(intem_list) # Передаем один лист result.append(validated_data.model_dump()) # Добаляем валидный и распаршеный словарь except: continue return result result_dict_data = parse_saby.process_reports_parse() list_data = parse_data_in_list(result_dict_data) list_data_validated = validate_data(list_data) working_database.SimpleDB().data_transfer_in_database(list_data_validated) scheduler.launch_the_scheduler()