Vol4ik
@Vol4ik

Как лучше получать новые значения json по API?

Добрый день
Подскажите, как лучше реализовать получение только новых значений в json по api?

Для примера, опрашиваю ресурс каждые 5 секунд, который отвечает следующим образом:
{
    "list": [{
        "err_id": 1,
        "name": "R1",
        "err_url": "http://R1"
    }, {
        "err_id": 2,
        "name": "R2",
        "err_url": "http://R2"
    }]
}


Забираю err_id, err_url (фактически информации больше, вложенные словари и т.д.), обрабатываю их и пересылаю дальше:
for x in json_file['list']:
   print(x['err_id'], x['err_url'])

Но через 5 секунд запрос повторяется, все старые значения так же обрабатываются (если появились новые, то и они тоже).
Как оптимальнее всего поступить, сохранять последние 100-500 значений (может случайно затесаться повторный id и через пару-тройку дней) и сравнивать последние или подключать какую-то базу и сохранять туда? Если так, то как правильнее обращаться к ним?
В перспективе хотелось бы упаковать скрипт в контейнер и оставить крутиться на постоянной основе.
Спасибо за внимание!
  • Вопрос задан
  • 101 просмотр
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
обычно списки имеют ID в элементах, а API позволяет или пагинацию или start с какого-то элемента

не совсем понятно что вам нужно, но если правильно понял - гуглите PostgreSQL Json queries
складываете в нее, затем запросами выбираете что нужно
ну или в классическую NoSQL: Mongo etc
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы