python3之51cto自动定时签到

前言

之前写过一遍,pyhton结合图灵机器人自动回复,之前51cto是使用网页签到,但是已经失效了,微信签到的原理和之前的机器人差不多的,不过是使用了python的itchat模块,结合定时功能,自动签到。

安装模块
  • 这里使用的是python3
pip install itchat
pip install apscheduler
代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
@author:Aiker Zhao
@file:sign_51cto.py
@time:下午12:06
"""

import itchat
import json
from apscheduler.schedulers.blocking import BlockingScheduler

itchat.auto_login(enableCmdQR=0, hotReload=True)  # windows下使用enableCmdQR=0,linux命令行使用enableCmdQR=2
# 获取好友列表,调用此方法后可得到好友列表
my_mps = itchat.get_mps()

# friends = itchat.get_friends()

# 我们可以使用json库将好友列表转换成json格式
# print(json.dumps(friends))
# print(json.dumps(my_mps))

'''
# 暂时不用旧的函数
def job():
    mps = itchat.search_mps(name=u'51CTO')[0]
    mps.send(u'签到')
    mps.send(u'下载豆')
'''

def qiandao():
    info_51cto = itchat.search_mps('51CTO')
    if info_51cto:
        username_51cto = info_51cto[0].get('UserName')
        itchat.send(u'签到', username_51cto)
        itchat.send(u'下载豆', username_51cto)

#qiandao()

def job_heartbeat():
    info_51cto = itchat.search_mps(name=u'51CTO')[0]
    print('1')

sched = BlockingScheduler()
#sched = BlockingScheduler(timezone="UTC") # 如果报timezone不一致的错误,需要指定timezone

# sched.add_job(job, 'interval', hours=24)
sched.add_job(qiandao, 'cron', hour=16, minute=19, second=22)
sched.add_job(job_heartbeat, 'interval', minutes=1)
sched.start()
实现的方法不止一种
  • 下面的两个函数都可以实现。
def job():                                                                                                                          
      u51cto = itchat.search_mps(name=u'51CTO')                                                                                       
      if u51cto:                                                                                                                      
          mps = u51cto[0]                                                                                                             
          mps.send(u'签到')                                                                                                           
          mps.send(u'下载豆')
def qiandao():
    info_51cto = itchat.search_mps('51CTO')
    if info_51cto:
        username_51cto = info_51cto[0].get('UserName')
        itchat.send(u'签到', username_51cto)
        itchat.send(u'下载豆', username_51cto)

心得:可以在云主机上后台运行,扫码登录即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值