- 0
- 0
- 0
- 打赏
位置: 首页 >文章
python定时任务主要模块sched,还有ApScheduler还可以通过其他方式实现定时任务,而ApScheduler是需要pip命令来下载,用sched更方便实现一些
import sched
import time
import smtplib
from email.mime.text import MIMEText
def send_email(subject, message, from_addr, to_addr, smtp_server):
# 邮件的主体信息
email = MIMEText(message)
email['Subject'] = subject
email['From'] = from_addr
email['To'] = to_addr
# 发邮件
with smtplib.SMTP(smtp_server) as server:
server.send_message(email)
def send_scheduled_email(subject, message, from_addr, to_addr, smtp_server, scheduled_time):
# 创建定时任务的示例
scheduler = sched.scheduler(time.time, time.sleep)
# 定时邮件
scheduler.enterabs(scheduled_time, 1, send_email, argument=(subject, message, from_addr, to_addr, smtp_server))
# 开启定时器
scheduler.run()
subject = 'Test Email'
message = 'This is a test email'
from_addr = 'test@example.com'
to_addr = 'test@example.com'
smtp_server = 'smtp.test.com'
scheduled_time = time.time() + 60*60 # 一小时后执行程序,设置定时时间发送
send_scheduled_email(subject, message, from_addr, to_addr, smtp_server, scheduled_time)
import sched
import time
import shutil
def backup_files():
source = '备份的路径'
destination = '备份到路径'
shutil.copytree(source, destination)
def schedule_backup():
# 创建新的定时器
scheduler = sched.scheduler(time.time, time.sleep)
# 备份程序在每天的1点来执行
backup_time = time.strptime('01:00:00', '%H:%M:%S')
backup_event = scheduler.enterabs(time.mktime(backup_time), 1, backup_files, ())
# 开启定时任务
scheduler.run()
schedule_backup()
转载:欢迎来到本站,转载请注明文章出处https://www.ormcc.com ,欢迎加入技术讨论群599606903
下一篇:CSS跳动的文字
ormcc
一个爱捣鼓的程序员
IP访问121772次,运行1480天
微信支付宝