基于flask和apscheduler的可视化操作任务调度系统,支持一次性任务、定时任务、周期任务。
基于JobCenter修改
- 可视化界面操作
- 定时任务统一管理
- 完全兼容Crontab
- 支持秒级定时任务
- 作业任务可搜索、暂停、删除
- 作业任务持久化存储、三种不同触发器类型作业动态添加
$ git clone git@github.com:barry-ran/TaskScheduler.git
$ cd TaskScheduler
$ pipenv install --dev
$ pipenv shell
# 先在config.py中的mysql_info配置数据库用户名、密码
# 需提前创建数据库(jobs),空数据库即可
$ flask init
$ flask run
* Running on http://127.0.0.1:5000/
# 开启外网访问
flask run --host 0.0.0.0 --port 5000
$ pipenv install # 创建虚拟环境并安装依赖
$ pipenv shell # 激活虚拟环境
$ flask initdb # 初始化数据库
$ flask initdb --drop # 删除数据
例如下面添加了一个每隔60s定时爬取小姐姐图片的python脚本任务(脚本在jobs/crawler_girls.py中)
# 安装服务
apt-get install mariadb-server
# 启动
sudo systemctl start mariadb
sudo systemctl enable mariad
# 设置密码(第一次安装密码为空,直接回车即可)
mysql -u root -p
use mysql;
update user set authentication_string=password("123456") where user="root";
flush privileges;
# 设置允许用户密码登录(ubuntu下需要)
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
FLUSH PRIVILEGES;
# 创建数据库
create database jobs;
参考文档: ubuntu18.04下安装mariaDB