实现一个每天发邮件提示,距离下个月发工资还有多少天
import time
import datetime
import calendar
import zmail
def now_zmail():
mail_content = {
'subject':'**__打工人__** 你好!',
'content_text':'这个月还剩下:'+str(over_time)+'天'+'\n'+'距离发工资的时间:'+str(money_time)+'天', #邮件内容
}
#使用哪个邮箱发送邮件
server = zmail.server('账号@qq.com','授权码')
#发送给目标账号邮件
server.send_mail('账号@qq.com',mail_content)
print('发送成功!')
def demo():
global now_time, over_time, money_time
now_time = time.strftime("%Y", time.localtime())
year = int(now_time)
if (year % 4) == 0 and (year % 100) != 0 or (year % 400) == 0:
print('{0}是闰年'.format(year))
now_time = time.strftime("%m", time.localtime())
# 判断月份
if now_time == '01':
a = calendar.mdays[1]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '02':
a = calendar.mdays[2]
#print('这个是当前月的天数:'+str(a))
now_time = time.strftime("%d", time.localtime())
#print('这是当前时间的天数:'+str(now_time))
over_time = int(a) - int(now_time)
#print('这个月还剩下:'+str(over_time)+' 天')
money_time = int(over_time) + 5
#print('距离发工资的时间:',str(money_time))
now_zmail()
elif now_time == '03':
a = calendar.mdays[3]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '04':
a = calendar.mdays[4]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '05':
a = calendar.mdays[5]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '06':
a = calendar.mdays[6]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '07':
a = calendar.mdays[7]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '08':
a = calendar.mdays[8]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '09':
a = calendar.mdays[9]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '10':
a = calendar.mdays[10]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '11':
a = calendar.mdays[11]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '12':
a = calendar.mdays[12]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
else:
print('{0}不是闰年'.format(year))
now_time = time.strftime("%m", time.localtime())
# 判断月份
if now_time == '01':
a = calendar.mdays[1]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '02':
a = calendar.mdays[2]
#print('这个是当前月的天数:'+str(a))
now_time = time.strftime("%d", time.localtime())
#print('这是当前时间的天数:'+str(now_time))
over_time = int(a) - int(now_time)
#print('这个月还剩下:'+str(over_time)+' 天')
money_time = int(over_time) + 5
#print('距离发工资的时间:',str(money_time))
now_zmail()
elif now_time == '03':
a = calendar.mdays[3]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '04':
a = calendar.mdays[4]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '05':
a = calendar.mdays[5]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '06':
a = calendar.mdays[6]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '07':
a = calendar.mdays[7]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '08':
a = calendar.mdays[8]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '09':
a = calendar.mdays[9]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '10':
a = calendar.mdays[10]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '11':
a = calendar.mdays[11]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
elif now_time == '12':
a = calendar.mdays[12]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 5
now_zmail()
def time_judge():
now_time_up = datetime.datetime.strptime(str(datetime.datetime.now().date())+'10:00', '%Y-%m-%d%H:%M')
now_time_down = datetime.datetime.strptime(str(datetime.datetime.now().date())+'18:01', '%Y-%m-%d%H:%M')
# 获取当前时间
n_time = datetime.datetime.now()
# 判断当前时间是否在范围时间内
if n_time > now_time_up and n_time < now_time_down:
demo()
def demo_start():
while 1 == 1:
print('程序开始运行')
time_judge()
print('程序执行完,延时开始')
time.sleep(57600)
demo_start()
2021-02-26 上面这个不好用。。。重新写了个
import time
import zmail
import datetime
import calendar
import schedule
def onedayday():
global over_time, money_time
now_time = time.strftime("%m", time.localtime())
if now_time == '01':
a = calendar.mdays[1]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '02':
a = calendar.mdays[2]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '03':
a = calendar.mdays[3]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '04':
a = calendar.mdays[4]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '05':
a = calendar.mdays[5]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '06':
a = calendar.mdays[6]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '07':
a = calendar.mdays[7]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '08':
a = calendar.mdays[8]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '09':
a = calendar.mdays[9]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '10':
a = calendar.mdays[10]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '11':
a = calendar.mdays[11]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '12':
a = calendar.mdays[12]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
def now_zmail():
mail_content = {
'subject':'**__打工人__** 你好!',
'content_text':'这个月还剩下:'+str(over_time)+'天'+'\n'+'距离发工资的时间:'+str(money_time)+'天', #邮件内容
}
#使用哪个邮箱发送邮件
server = zmail.server('账号@qq.com','邮箱授权码'')
#发送给目标账号邮件
server.send_mail('账号@qq.com',mail_content)
schedule.every().day.at("9:30").do(onedayday) # 每天10:30执行一次任务
while True:
schedule.run_pending()
time.sleep(1)
下载PyInstaller打包库
利用pip install PyInstaller 打包exe程序
pyinstaller -F -w mycode.py (-w就是取消窗口)
把打包exe放在 win的所有程序,启动目录下,明天开机就会自动运行程序,或者自行打开一直挂着,就能每天都收到邮件了
2021-02-28 加个弹窗
import time
import zmail
import datetime
import calendar
import schedule
import tkinter as tk
from tkinter import messagebox
def start_go():
window = tk.Tk()
window.withdraw()
messagebox.showinfo("发工资时间","程序已启动")
def onedayday():
global over_time, money_time
now_time = time.strftime("%m", time.localtime())
if now_time == '01':
a = calendar.mdays[1]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '02':
a = calendar.mdays[2]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '03':
a = calendar.mdays[3]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '04':
a = calendar.mdays[4]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '05':
a = calendar.mdays[5]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '06':
a = calendar.mdays[6]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '07':
a = calendar.mdays[7]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '08':
a = calendar.mdays[8]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '09':
a = calendar.mdays[9]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '10':
a = calendar.mdays[10]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '11':
a = calendar.mdays[11]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
elif now_time == '12':
a = calendar.mdays[12]
now_time = time.strftime("%d", time.localtime())
over_time = int(a) - int(now_time)
money_time = int(over_time) + 10
now_zmail()
def now_zmail():
mail_content = {
'subject':'**__打工人__** 你好!',
'content_text':'这个月还剩下:'+str(over_time)+'天'+'\n'+'距离发工资的时间:'+str(money_time)+'天', #邮件内容
}
#使用哪个邮箱发送邮件
server = zmail.server('邮箱@qq.com','授权码')
#发送给目标账号邮件
server.send_mail('邮箱@qq.com',mail_content)
start_go()
schedule.every().day.at("9:30").do(onedayday)
while True:
schedule.run_pending()
time.sleep(1)