用Python在00:00给微信好友发元旦祝福语
2019年的元旦即将来临,这里用Python撸一串简单的代码来实现定点给微信里的所有小伙伴发祝福语
环境说明
Python版本: 不限
第三方库: itchat, schedule
注:所有祝福语来源于网络,代码运行周期较长,最好跑在服务器上
代码如下
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time : 18-12-9 上午9:08
# @Author : KainHuck
# @Email : kainhoo2333@gmail.com
# @File : 元旦祝福.py
import itchat
import random
import schedule
import datetime
import time
# 登录,并暂存登录状态
itchat.auto_login(hotReload=True)
# 获取所有好友信息
friends = itchat.get_friends(update=True)
# 筛选掉没有备注名的好友, 并将要发送祝福语的好友放置在一个字典里
final_friends = {}
for each in friends:
if len(each['RemarkName']) > 0:
final_friends[each['RemarkName']] = each['UserName']
# 祝福语列表
greeting = ['元旦到了,在辞旧迎新的日子里,我愿为你送走烦恼迎来开心,送走压力迎来健康,送走失意迎来顺利,送走意外迎来平安,并希望你快快乐乐过个元旦节。',
'圆圆的梦想,七色的花;圆圆的人生,五彩的画;圆圆的元旦,幸福的家;圆圆的问候,事业大发;圆圆的祝福,你笑哈哈!祝你元旦快乐! ',
'元旦即将来到,信息不能迟到;好友前来报到,祝福提前送到:爱情浪漫美好,友情温暖笼罩,亲情时刻围绕,工作业绩攀高,生活幸福欢笑,来年更美好! ',
'喜悦,在心中荡漾;笑容,在脸颊洋溢;歌声,在悠扬回荡;舞步,在惬意游走;礼花,在尽情绽放;祝福,在频频发送。朋友,元旦快乐!祝你幸福,阖家欢乐! ',
'元旦加祝福,新的一年好幸福;元旦加努力,新的一年好成绩;元旦加上你,新的一年好给力!祝元旦的你格外美丽,快乐一整个世纪!',
'新的开始新希望,新的一天新阳光,开始新的追求,播下新的梦想,翻开新的一页,写下新的辉煌。新的一年开始,送你深深的祝福,元旦快乐。',
'元旦将来到,我心费思量。朋友关系好,送个什么好。我无多钱财,也没中彩票。短信送祝福,礼轻情意重。祝你轻轻松松无烦恼,快快乐乐过元旦!',
'将快乐化作短信,发送给你,愿你新的一年快乐无边;将好运融入信息,传达给你,愿新的一年里,好运连连幸福不断;元旦里我将所有的祝福复制,一并发于你,愿你明年万事如意! ']
# 发送祝福函数
def send_greet(RemarkName,userName):
greet = random.choice(greeting) # 随机选择一句祝福语
message = RemarkName + ',' + greet # 添加上备注名
itchat.send(message, toUserName=userName)
# 定义任务
def job():
now_date = str(datetime.datetime.now().date()) # 获取函数执行时的时间
if now_date == '2019-01-01' or now_date == '2019-1-1': # 如果是2019年元旦就执行(PS:忘记datetime.datetime.now().date()输出的格式了...)
for each_friend in final_friends:
send_greet(each_friend, final_friends['final_friends'])
# 每天00:00执行一次job函数
schedule.every().day.at("00:00").do(job)
while True:
schedule.run_pending()
time.sleep(1)
用Python在00:00给微信好友发元旦祝福语的更多相关文章
- python 操作 mysql 数据库 datetime 属性字段为 0000-00-00 00:00:00 的问题
撇开 sqlalchemy, 先讲 MySQLdb 和 pymysql mysql 版本 mysql Ver 14.14 Distrib 5.1.73 新建一个测试表 test, 结构如下: mys ...
- 1970年1月1日(00:00:00 GMT)Unix 时间戳(Unix Timestamp)
转载自(http://jm.ncxyol.com/post-88.html) 今天在看Python API时,看到time模块: The epoch is the point where the ...
- SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.
相信很多人进行数据存储时,会遇上如标题的异常错误. 其实也不算上一个错误. 当你的程序中有宣告一个字段的数据类型为DateTime时,但你又没有赋值给它,就进行存储时,它就会得到这样一个结果. 看看下 ...
- “SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间。”
原因: .NET中 DateTime最小值为: 0001-1-1 0:00:00 数据库中DateTime最小值为: 1753-1-1 0:00:00, 很明显:.NET中的最小值超出了数据库时间类 ...
- '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp error
'0000-00-00 00:00:00' can not be represented as java.sql.Timestamp error 异常现象 ### Cause: java.sql.SQ ...
- mysql解决Value ‘0000-00-00 00:00:00’ can not be represented as java.sql.Timestamp
同步发布:http://www.yuanrengu.com/index.php/mysqlsolvetimestamp.html 在使用mysql时,如果数据库中的字段类型是timestamp,默认为 ...
- 错误:Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp;的解决
问题: 代码中查询MySQL的结果集时报错,提示Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp;刚开始 ...
- Mysql-提示java.sql.SQLException: Cannot convert value '0000-00-00 00:00:00' from column 7 to TIMESTAMP.
在Mysql数据库中使用DATETIME类型来存储时间,使用JDBC中读取这个字段的时候,应该使用 ResultSet.getTimestamp(),这样会得到一个java.sql.Timestamp ...
- extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办。。。
extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办...所以要把它格 ...
随机推荐
- php+ajax 实现无限树列表
首先介绍我实现的是xhprof插件的日志转为无限树状图,先看效果图: 废话不多说,直接看代码:(辛辛苦苦敲了好久才搞定,逻辑比较多,新手多揣摩) 控制器: 1 <?php 2 3 namespa ...
- dataGridView与数据源dataTable同步排序
private void dataGridView1_Sorted(object sender, EventArgs e) { string _sortStr ...
- MFC 状态栏的使用 CstatusBar
你在源文件头文件声明一下 CStatusBar zhuangtailan; 然后在窗口初始化添加以下代码 zhuangtailan.Create(this);//意思是在本窗口创建 UINT id ...
- Fréchet Inception Distance(FID)
计算 IS 时只考虑了生成样本,没有考虑真实数据,即 IS 无法反映真实数据和样本之间的距离,IS 判断数据真实性的依据,源于 Inception V3 的训练集 ------ ImageNet,在 ...
- 吴裕雄--天生自然java开发常用类库学习笔记:对象克隆技术
class Person implements Cloneable{ // 实现Cloneable接口表示可以被克隆 private String name ; public Person(Strin ...
- jdbc oracle 连接串
jdbc.url配置为: jdbc:oracle:thin:@xxx.xx.xx.xx:1521:orclpdb 报错: java.sql.SQLException: Listenerrefused ...
- Linux学习总结《shell脚本》知识点关键-用好“过滤器”
- Mac 配置代码高亮 Git状态显示
Mac 一个为开发者量身定做的笔记本,分享给大家希望能帮助大家配置一个好的开发环境,好的开发环境才有好的心情Code. 首先进入到Home到目录一般默认打开的都是Home,如果不是输入 cd ~ 回车 ...
- jQuery原理系列-css选择器实现
jQuery最强大的功能在于它可以通过css选择器查找元素,它的源码中有一半是sizzle css选择器引擎的代码,在html5规范出来之后,增加了document.querySelector和doc ...
- flink初识及安装flink standalone集群
flink architecture 1.可以看出,flink可以运行在本地,也可以类似spark一样on yarn或者standalone模式(与spark standalone也很相似),此外fl ...