Django中通过定时任务触发页面静态化的处理方式

时间:2022-04-12 16:17:56

Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。
Django是一个开放源代码的Web应用框架,由Python写成。
Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。
Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。

本章节给大家介绍Django中通过定时任务触发页面静态化的处理方式,具体内容如下所示:

安装

pip install django-crontab

添加应用

INSTALLED_APPS = [
  ...
  'django_crontab', # 定时任务
  ...
]

设置任务 的定时时间

在配置文件中设置定时执行的时间

每个定时任务分为三部分定义:

任务时间

基本格式 :

* * * * *

分 时 日 月 周      命令

M: 分钟(0-59)。每分钟用*或者 */1表示

H:小时(0-23)。(0表示0点)

D:天(1-31)。

m: 月(1-12)。

d: 一星期内的天(0~6,0为星期天)。

任务方法

任务日志

如实现网页首页的定时任务设置如下

# 定时任务
CRONJOBS = [
  # 每5分钟执行一次生成主页静态文件
  ('*/5 * * * *', '执行生成静态化页面的函数', '>> 要生成日志的路径')
]

决中文字符问题

在定时任务中,如果出现非英文字符,会出现字符异常错误

可以通过在配置文件中添加定时任务执行的附加命令来实现

# 解决crontab中文问题
CRONTAB_COMMAND_PREFIX = 'LANG_ALL=zh_cn.UTF-8'

开启定时任务

添加定时任务到系统中

python manage.py crontab add

显示已经激活的定时任务

python manage.py crontab show

移除定时任务

python manage.py crontab remove

开启定时任务后就会在log日志中每五分钟出现一条log日志

总结

以上所述是小编给大家介绍的Django中通过定时任务触发页面静态化的处理方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!