Python 如何使用django每隔几秒钟运行一次后台作业

Python 如何使用django每隔几秒钟运行一次后台作业,python,django,python-3.x,background-process,Python,Django,Python 3.x,Background Process,我想知道如何使用django每隔几秒钟执行一个函数或文件,这样我就可以用从这个函数调用中获得的数据填充我的数据库 我需要每5秒钟执行一次函数,此函数将刮取网站并将其信息保存到我的数据库中,我的一个模板视图将使用此信息生成一个图形 我读过芹菜和async之类的东西,但想不出一个方法来实现它 如果有人回答了这个问题,请告诉我,我应该把这个作业文件放在我的django项目中的什么地方,或者我是否应该在现有文件中添加一个函数 pip install django-crontab 在设置文件的已安装应用

我想知道如何使用django每隔几秒钟执行一个函数或文件,这样我就可以用从这个函数调用中获得的数据填充我的数据库

我需要每5秒钟执行一次函数,此函数将刮取网站并将其信息保存到我的数据库中,我的一个模板视图将使用此信息生成一个
图形

我读过芹菜和
async
之类的东西,但想不出一个方法来实现它

如果有人回答了这个问题,请告诉我,我应该把这个
作业
文件放在我的django项目中的什么地方,或者我是否应该在现有文件中添加一个函数

pip install django-crontab
在设置文件的
已安装应用程序中添加
django\u crontab

在项目目录中创建一个名为
cron.py
的文件,并在此文件中写入函数

在settings.py中添加时间

CRONJOBS = [
    ('* * * * 5', 'cron.my_scheduled_job')
]
然后从终点站

python manage.py crontab add

这种简单的东西可以作为守护进程来实现,而不是使用cron或芹菜等,
.

看看你可以用芹菜做这个,但为什么要麻烦呢?因为这与Django的目的或直接操作无关,为什么不编写一个独立的脚本来完成您的任务并将其设置为作为cron作业运行呢?当我执行
python manage.py crontab add
时,它会显示
ImportError:No module name'django crontab'
。我在我的settings.py:
INSTALLED_APPS=['django crontab',
中添加了类似这样的django crontab。它还包含所有其他djano.stuff和我的应用程序名称(核心、帐户…)你安装了吗?看我答案的第一行,从终端第一次安装,如果你使用virtualenv激活virtualenv运行pip安装django Crontabya,它已经安装了,我用
pip freeze
检查了它,刚刚修复了它,在安装的应用程序中它应该是django_crontab而不是django crontab抱歉兄弟,小姐打了出来,:)@gabrielbelini