session = requests.Session()
session.max_redirects = 50 # сколько редиректов позволять
session.get(url)
from os import system
from time import sleep
from datetime import timedelta
# незачем предварительно присваивать 0 переменным,
# если их всё равно перезаполняем значениями
s = int(input('seconds: '))
m = int(input('minutes: '))
h = int(input('hours: '))
# в timedelta удобнее хранить интервалы
time_left = timedelta(hours=h, minutes=m, seconds=s)
# также timedelta поддерживает арифметику и сравнения
step = timedelta(seconds=1) # вот почему шаг - тоже timedelta
# сравнение интервалов вполне себе работает
while time_left >= step:
system('CLS')
print(time_left)
# а такой приём позволяет обновлять таймер не каждую секунду,
# а с заданным шагом, при этом достаточно указать нужный step
sleep(step.total_seconds)
# интервалы времени можно складывать и вычитать
time_left -= step # то же, что и time_left = time_left - step
print('end')
input('Tap ENTER for exit')
И вообще, ты уже используешь модуль json для парсинга json, ну так используй его же для обратного перевода.
Или вообще не гоняй туда-сюда, ты ведь уже грузишь json-строку.
Или у тебя вопрос, как хранить JSON-данные в постгресе?
В общем, уточняй вопрос.