最近在学习一点python,先找了找有趣的应用,实际修改跑了一下提升兴趣程度。python
找到itchat,它的简介是这样的:git
“itchat是一个开源的微信我的号接口,使用python调用微信从未如此简单。github
使用不到三十行的代码,你就能够完成一个可以处理全部信息的微信机器人。api
固然,该api的使用远不止一个机器人,更多的功能等着你来发现,好比这些。微信
该接口与公众号接口itchatmp共享相似的操做方式,学习一次掌握两个工具。函数
现在微信已经成为了我的社交的很大一部分,但愿这个项目可以帮助你扩展你的我的的微信号、方便本身的生活。”工具
http://itchat.readthedocs.io/zh/latest/学习
itchat使用须要先下载安装,安装过程很简单,直接测试
pip install itchat
我安装的python3.6自带pip,若是没有pip的话我建议升级python。spa
在网上已经有很多itchat的应用,最简单的就是查找特定用户来发送微信消息。我结合另外一个示范将消息扩展了一点:间隔特定时间给特定的好友发送微信消息提醒(久坐提醒?)
代码以下:
1 #-*-coding:utf8-*- 2 import itchat 3 import datetime, os, platform,time 4 5 def timerfun(sched_time) : 6 flag = 0 7 while True: 8 now = datetime.datetime.now() 9 if now > sched_time and now < sched_time + datetime.timedelta(seconds=1) : # 由于时间秒以后的小数部分不必定相等,要标记一个范围判断 10 send_move() 11 time.sleep(1) # 每次判断间隔1s,避免屡次触发事件 12 flag = 1 13 else : 14 #print('schedual time is {0}'.format(sched_time)) 15 #print('now is {0}'.format(now)) 16 if flag == 1 : 17 sched_time = sched_time + datetime.timedelta(hours=1) # 把目标时间增长一个小时,一个小时后触发再次执行 18 flag = 0 19 20 def send_move: 21 # nickname = input('please input your firends\' nickname : ' ) 22 # 想给谁发信息,先查找到这个朋友,name后填微信备注便可,deepin测试成功 23 # users = itchat.search_friends(name=nickname) 24 users = itchat.search_friends(name='大壮') # 使用备注名来查找实际用户名 25 #获取好友所有信息,返回一个列表,列表内是一个字典 26 print(users) 27 #获取`UserName`,用于发送消息 28 userName = users[0]['UserName'] 29 itchat.send("该起来动一下了!",toUserName = userName) 30 print('succeed') 31 32 if __name__=='__main__': 33 itchat.auto_login(hotReload=True) # 首次扫描登陆后后续自动登陆 34 sched_time = datetime.datetime(2017,11,6,16,24,10) #设定初次触发事件的事件点 35 print('run the timer task at {0}'.format(sched_time)) 36 timerfun(sched_time)
有几个地方调试了一下:
这个程序正常状况下直接运行便可,第一次运行可能须要扫码登陆一下。另外能够将第11行的判断间隔增大一些,减小程序运行消耗。
后续仍是要继续学习python基础,只学习网上现成的实例的话,根基不稳,后续学习效率高不了。