本帖最后由 木头MT 于 2022-9-21 17:06 编辑
最近有点忙碌,常常忘记身边人的生日,
不是记不住,只是一打岔就想不起来自己刚刚在想什么,
为了防止自己继续忘记别人的生日
搞一个生日推送,让爱情远离暴力。
可以打包依赖部署在云函数上面,
抽空继续完善下功能
给个思路:配合在线文档实现增加生日对象。
[Python] 纯文本查看 复制代码 import codecs
import csv
from borax.calendars.lunardate import LunarDate
import datetime
import requests
year=datetime.datetime.now().strftime("%Y")
today=datetime.datetime.now().strftime('%Y-%m-%d')
day=1
def push(name,date,day):
token = '你的token' # 在pushplus网站中可以找到
title = '生日提示' # 改成你要的标题内容
content = '还有{day}天就是{name}的生日了,在{date}'.format(day=day,name=name,date=date) # 改成你要的正文内容
url = 'http://www.pushplus.plus/send?token=' + token + '&title=' + title + '&content=' + content
requests.get(url)
with codecs.open('1.csv') as f:
for row in csv.reader(f, skipinitialspace=True):
if row[1]=='农历':
birthday=LunarDate(int(year),int(row[2]),int(row[3])-day,0)
birthday=birthday.to_solar_date()
birthday2=LunarDate(int(year),int(row[2]),int(row[3]),0).to_solar_date()
if today==birthday:
push(row[0],birthday2,day)
if row[1]=='公历':
birthday=datetime.datetime(int(year),int(row[2]),int(row[3])-day).strftime('%Y-%m-%d')
birthday2=datetime.datetime(int(year),int(row[2]),int(row[3])).strftime('%Y-%m-%d')
if today==birthday:
push(row[0],birthday2,day)
|