0

我正在从事一个个人项目,以从 Sendinblue Api(CRM 服务)中分割一些数据。基本上,我试图实现的是根据每个用户的电子邮件行为为每个用户生成一个新的分数属性。对于那个提议,我计划的过程如下:

  1. 从 API 获取数据
  2. 存储在数据库中
  3. 使用 Python 分析和分割数据
  4. 每 24 小时在 Sendin 中创建和更新分数属性

Api 的速率限制为每分钟 400 个请求,我们现在谈论的是 100k 寄存器,这意味着我必须花费大约 3 个小时来获取所有初始数据(目前我正在使用并发期货进行多处理)。之后,我将计划仅存储和更新出现更改的寄存器。我想知道这是否是最好的方法,以及哪种工具组合更适合这项工作。

现在我的所有脚本都在 Jupyter 笔记本中,而且我最近完成了我的第一个 Django 项目,所以我不知道我是否需要一个 django 应用程序,或者只是简单地将笔记本连接到数据库(PostgreSQL?),如果这最后一个可能是我必须学习的库,每 24 小时运行一次我的脚本。(我是初学者)。谢谢!

4

1 回答 1

1

我认为你不需要 Django,除非你想要一个网络来查看你的数据。即使如此,您也可以编写任何 Web 应用程序来使用任何框架/语言查看您的统计数据。所以我认为方法更简单:

  1. 创建您的 python 项目,入口点主函数将执行逻辑以从 API 获取数据。完成后,您可以启动逻辑进行分析和统计,然后将结果保存在数据库中。
  2. 如果您可以通过 SQL 查询查看最终结果,则无需构建 Web 应用程序。否则,您可能想要构建一个小型 Web 应用程序以从数据库中提取数据以查看图表中的统计数据或以任何喜欢的格式导出。
  3. 设置一个 linux cron 作业以在 #1 处执行 python 代码,并让它在您想要的特定时间每 24 次运行一次。链接:https ://phoenixnap.com/kb/set-up-cron-job-linux
于 2020-11-25T02:42:23.270 回答