首页 > 解决方案 > 如何在我的 django amazon 产品跟踪项目中安排任务?

问题描述

我正在使用Django开发一个网络应用程序项目。它是亚马逊产品价格跟踪器。我希望应用程序自动抓取产品表中的产品,以检查产品的价格是否降低了。我想在应用程序完成后部署它,所以它也应该在那里工作。

我在网上寻找答案,但似乎cronjobscelery不适用于 Windows,所以还有其他方法可以实现我的目标。

我创建了一个需要每天执行一次的函数。

这是我想每 24 小时执行一次的功能。

def track():
    products = Product.objects.all()

    for product in products:
        new_data = getproduct(product.link)
        update_data(product, new_data)

我已经尝试了计划库:

import schedule
import time
from .models import Product
from .utils import getproduct

schedule.every().day.at("12:00").do(track)

标签: pythondjangoscheduled-tasks

解决方案


在您的场景中,芹菜是最好的选择,是的,您也可以在 Windows 上运行芹菜。安装 rabbit mq 和 celery < 4 就可以了。但是,如果您不想使用 celery,则可以使用另一个选项dajngo-background-tasks


推荐阅读