惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

SecWiki News
SecWiki News
量子位
The Cloudflare Blog
美团技术团队
T
The Exploit Database - CXSecurity.com
博客园 - 【当耐特】
Spread Privacy
Spread Privacy
P
Proofpoint News Feed
C
CXSECURITY Database RSS Feed - CXSecurity.com
博客园 - 三生石上(FineUI控件)
T
Tor Project blog
博客园 - 司徒正美
宝玉的分享
宝玉的分享
T
Threatpost
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
S
Secure Thoughts
T
Threat Research - Cisco Blogs
Hacker News: Ask HN
Hacker News: Ask HN
Jina AI
Jina AI
博客园 - 聂微东
A
Arctic Wolf
I
Intezer
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Know Your Adversary
Know Your Adversary
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
爱范儿
爱范儿
Hugging Face - Blog
Hugging Face - Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
小众软件
小众软件
T
Tailwind CSS Blog
The Hacker News
The Hacker News
L
LINUX DO - 最新话题
Hacker News - Newest:
Hacker News - Newest: "LLM"
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
TaoSecurity Blog
TaoSecurity Blog
Project Zero
Project Zero
博客园 - 叶小钗
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cloudbric
Cloudbric
雷峰网
雷峰网
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
大猫的无限游戏
大猫的无限游戏
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Troy Hunt's Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
V2EX - 技术
V2EX - 技术
The GitHub Blog
The GitHub Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Privacy & Cybersecurity Law Blog

轶哥博客

blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog
blog
2023-02-28 · via 轶哥博客

实现预览:

scheduledrequestschatgpt.png

B站视频: https://www.bilibili.com/video/BV1u84y1E79f/?share_source=copy_web&vd_source=de30ad927aff7c4075790b558eb50e56

代码仓库:https://github.com/yi-ge/scheduled-requests

中文描述:

使用python3实现一个定时请求服务,要求如下:

1、数据库使用sqlite3,代码中需要处理数据库初始化,数据库存储的内容可能存在中文。

2、python使用flask监听8848端口。

3、首页返回html内容,页面内容使用中文,使用bootstrap美化页面。页面中使用jquery的ajax实现用户登陆、退出、展示任务列表的功能,后端对应实现/api/login(登陆成功后使用jwt生成token返回前端,前端收到token后存储到localStorage)、/api/logout接口,同时编写三个需要token认证(token通过header传递)的POST接口实现/api/add、/api/remove,/api/list,分别用于添加任务、移除任务、展示任务列表。添加任务时需要输入任务URL、请求方式(GET/POST)、请求参数(如果是POST请求则可以选择body类型为json、x-www-form-urlencoded),同时可以选择定时方式——cron类型或固定时间间隔,如果用户选择cron类型则需要输入cron表达式,如果选择固定时间间隔,则需要输入数字秒。

4、进入页面的时候判断是否是否已经登陆(localStorage中是否存在token),如果存在则显示任务界面,否则显示登录界面。

5、前端与后端所有的交互需要使用json格式。

6、在python启动的时候,通过SQL查询所有的任务,加载任务到APScheduler,按照任务要求的间隔或cron时间定时执行对应方法及以对应参数请求对应的URL。

7、在任务执行失败的情况下进行错误处理。

8、默认账户密码为:admin、admin。

请实现完整的python代码。

ChatGPT对该系统的介绍:

这个系统是一个定时请求服务,可以帮助用户定时请求指定的URL,并根据用户的需求设置不同的请求方式、请求参数、定时方式和定时规则。同时,该系统支持用户添加、删除和查询任务列表,具有很高的可定制性和易用性。

系统采用了Python3作为开发语言,使用Flask作为Web框架,SQLite3作为数据库存储,使用了Bootstrap和Font Awesome等前端框架和插件进行页面美化和交互。系统在启动时会自动加载所有任务,并根据任务的定时方式和规则定时执行请求任务。如果任务执行失败,系统还会进行错误处理。

用户首先需要登录系统才能使用系统的功能。登录成功后,用户可以进入任务列表页面,该页面会显示所有已经添加的任务信息,包括任务ID、请求的URL、请求方式、请求参数、时间间隔/Cron表达式、上次执行时间、下次执行时间、任务状态和操作(删除)。用户可以通过任务列表页面添加、删除和查询任务。

用户添加任务时,需要指定请求的URL、请求方式、请求参数以及定时方式和规则。定时方式有两种:时间间隔和Cron表达式。如果用户选择时间间隔,需要输入一个数字表示请求的时间间隔,单位为秒;如果用户选择Cron表达式,需要输入符合Cron规则的表达式。系统会根据用户输入的定时规则自动执行请求任务,并将请求结果存储到数据库中。

除了添加任务,用户还可以删除任务。删除任务时需要选择要删除的任务,并进行确认。在任务执行失败时,系统会进行错误处理,并在页面上提示用户错误信息。

总的来说,这个系统具有很高的可定制性和易用性,用户可以根据自己的需求添加、删除和查询任务,并根据不同的需求设置不同的请求方式、请求参数、定时方式和规则。该系统对于需要定时请求任务的用户非常实用,可以帮助用户省去手动定时请求任务的麻烦,提高工作效率。