#python #django #api #jupyter-notebook #sendinblue
#python #django #API #jupyter-ноутбук #sendinblue
Вопрос:
Я работаю в личном проекте, чтобы сегментировать некоторые данные из Api Sendinblue (CRM Service). В основном то, чего я пытаюсь достичь, — это создать новый атрибут оценки для каждой пользовательской базы на основе его поведения при отправке электронной почты. Для этого предложенного процесса я планирую следующий:
- Получение данных из API
- Хранить в базе данных
- Анализ и сегментация данных с помощью Python
- Создавайте и обновляйте атрибут score в Sendin каждые 24 часа
Api имеет скорость, ограничивающую 400 запросов в минуту, сейчас мы говорим о 100 тыс. регистрах, что означает, что мне нужно потратить около 3 часов, чтобы получить все исходные данные (в настоящее время я использую параллельные фьючерсы для многопроцессорной обработки). После этого я планирую хранить и обновлять только регистры, которые представляют изменения. Мне интересно, лучший ли это способ сделать это и какие комбинации инструментов лучше подходят для этой работы.
Прямо сейчас у меня есть весь мой скрипт в Jupyter notebook, и я недавно закончил свой первый проект Django, поэтому я не знаю, нужно ли мне приложение django для этого или просто подключить ноутбук к базе данных (PostgreSQL?), И если это последнее возможно, какую библиотеку я должен изучитьзапускать мой скрипт каждые 24 часа. (я новичок). Спасибо!
Ответ №1:
Я не думаю, что вам нужен Django, за исключением того, что вам нужен веб для просмотра ваших данных. Тем не менее, вы можете написать любое веб-приложение для просмотра ваших статистических данных с помощью любой платформы / языка. Поэтому я думаю, что подход проще:
- Создайте свой проект на python, основная функция точки входа будет выполнять логику для извлечения данных из API. Как только это будет сделано, вы можете запустить логику для анализа и статистики, а затем сохранить результат в базе данных.
- Если вы можете запросить для просмотра конечного результата с помощью SQL, вам не нужно создавать веб-приложение. В противном случае вам может потребоваться создать небольшое веб-приложение для извлечения данных из базы данных для просмотра статистики в виде диаграмм или экспорта в любом предпочитаемом формате.
- Настройте задание cron Linux для выполнения кода python на # 1 и позволяйте ему запускаться каждые 24 часа в удобное для вас время. Ссылка: https://phoenixnap.com/kb/set-up-cron-job-linux
Комментарии:
1. Спасибо, я работаю в Windows, могу ли я запустить cron job в этой системе?
2. Да, вы можете. Если вы находитесь в Window, вам нужно создать сценарий оболочки (расширение .bat ), ваш bat-файл выполнит ваш код python с помощью командной строки «python ….», затем вы можете настроить расписание службы windows для выполнения этого сценария оболочки.