专栏首页python3python3之51cto自动定时签到

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)

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python编写规则值得收藏

    Python中采用PEP8作为编码规范,其中PEP是 python enhancement proposal 的缩写,而“PEP8”中的“8”表示版本号。PEP...

    py3study
  • error while loading

    error while loading shared libraries:libltdl.so.3:cannot open shared object file...

    py3study
  • SAS作图问题概述3

      数值型数据表现为数字,在整理时通常进行数据分组。分组是根据统计研究的需要,将数据按照某种标准分成不同的组别。直方图是用矩形的宽度和高度来表示频数分布的图...

    py3study
  • selenium自动登录挂stackoverflow的金牌

    最近玩起stackoverflow了,其中有一项成就是  Visit the site each day for 100 consecutive days. (...

    十四君
  • 图解 SSR 等 6 种前端渲染模式

    React、Vue 等现代化前端框架的大旗之下,CSR(Client-Side Rendering)模式深入人心:

    ayqy贾杰
  • ZooKeeper 如何使用Watcher

    ZooKeeper 允许客户端向服务端注册一个 Watcher 监听,当服务端的一些指定事件触发了这个 Watcher,那么就向指定客户端(注册了对应 Watc...

    smartsi
  • 利用placeholder属性来添加输入框默认文字提示,提高用户体验

    这个是我老早就在用的方法,本不打算分享,因为网上随便都能搜得到,感觉没有分享的必要。鉴于中国博客联盟有朋友问到了这问题,所以还是简单的整理下,希望能帮到部分不了...

    张戈
  • Zookeeper Watcher机制

    ZooKeeper是用来协调(同步)分布式进程的服务,多个分布式进程通过ZooKeeper提供的API来操作共享的ZooKeeper内存数据对象ZNode来达成...

    Monica2333
  • Spring Boot2 系列教程(三十九)Spring Boot 热部署

    Spring Boot 中的热部署相信大家都用过吧,只需要添加 spring-boot-devtools 依赖就可以轻松实现热部署。Spring Boot 中热...

    江南一点雨
  • 【转载+微整】Navicat Premium 12.0.18安装、激活和简单使用

    Navicat Premium 12 是一套数据库开发管理工具,支持连接 MySQL、Oracle等多种数据库,可以快速轻松地创建、管理和维护数据库。

    黑泽君

扫码关注云+社区

领取腾讯云代金券