import json rates_file = open(file_name, 'r+') rates = json.load(rates_file) rates_file.close() [fin_info] = ds.get_finances({'disabled =': 0, 'fin_id =': fin_id}) if fin_info['curr_code'] not in rates: print( "Ошибка curr_code. Неправильный формат файла \"{}\"".format(file_name)) quit() if 'rates' not in rates[fin_info['curr_code']]: print("Ошибка rates. Неправильный формат файла \"{}\"".format(file_name)) quit() from interfaces import Sbrf sbr = Sbrf(ds) print("Процесс пошёл") prev_event_ts = 0 for rate_row in rates[fin_info['curr_code']]['rates']: row = {'fin_id': fin_id} row.update(sbr._get_rate_row(rate_row)) if not ds.is_exists_rate(row) and row['event_ts'] != prev_event_ts: ds.insert_rates(row) prev_event_ts = row['event_ts'] print("Процесс окончен")