Python实现微信公众号每日签到(T00ls)

前言

本来说是昨天写这两篇的(签到和天气发送),但是看到小伙伴给的一个exp后想做下批量,就跑去研究fofa与zoomeye的api了,所以耽误了。。。
总的来说实现定时签到很简单,几行代码就可以搞定,本文就拿T00ls的工作号来做示范。
程序的大致流程:1.登录微信-》2.搜索公众号-》3.发送签到-》4.延迟>-》5.循环(返回3)

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import time
import itchat

itchat.auto_login(True)

#查询T00ls
def find_mps():
mps = itchat.get_mps()
for a in mps:
if a['NickName'] == 'T00ls':
return a['UserName']

#检测时间,并签到


def main():
while True:
try:
itchat.send('3',toUserName=find_mps())
time.sleep(10)
print('消息已发送,当前时间为:'+time.strftime("%Y-%m-%d %H:%M:%S"))
except KeyboardInterrupt:
print('!!!您已手动退出!!!')
break

if __name__ == '__main__':
main()

总结

在实际使用中我发现,由于不清楚网页微信在线状态的存活时间,不知道要在哪儿加判断,来判断微信已掉线了,所以我还是得需要再深入学习itchat,解决这个问题,写着玩玩还行,稳定性不敢保证
PS:t00ls上也有同学写了签到,他说理论上可以一直签不会掉(人家附上了一个多星期的签到截图)