Python实现定时在微信群发送消息

Python微信群定时发送消息

为了大家不忘记打卡,用Python写了个脚本每天上下班前自动在微信群发送打卡

此脚本使用itchat、datetime、time、schedule模块实现,具体使用方法可点击以下链接查看
[微信接口-itchat]
[日期模块-datetime]
[时间访问与转换-time]
[任务调度-schedule]

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#import library
import schedule
import time
import itchat
import datetime
#登陆网页端微信,有的微信号可能登陆不上
itchat.auto_login(hotReload=True)
#查找微信群,替换"XXX"为你要发送消息的群名称即可,一定要先将群保存到通讯录才可以!!!!!!
user = itchat.search_chatrooms(name=u"XXX")
userName = user[0][u'UserName']

#循环打卡三次,每次间隔1秒
def job():
    for i in range(0, 3):
        itchat.send("打卡", toUserName=userName)
        time.sleep(1)
#每天固定时间运行job,可自定义引号中的时间
schedule.every().day.at("08:20").do(job)
schedule.every().day.at("17:35").do(job)
while True:
    schedule.run_pending()
    # 在运行时打印当前时间
    now = datetime.datetime.now()
    now_str = now.strftime('%Y-%m-%d %H:%M:%S')[11:]
    print('\r{}'.format(now_str), end='')

注意:Itchat 已经失效了

有这方面需求可以参考以下微信自动化相关项目:

  • WeChatPYAPI:《WeChatPYAPI》是基于PC端的Python接口,开发者可通过Python轻松调用。可进行二次开发,实现微信机器人、群管理等强大的功能!
  • wxBot:用Python包装Web微信协议实现的微信机器人框架。
  • wechaty:Wechaty是面向聊天机器人制造商的RPA(机器人流程自动化)SDK,可以帮助您在JavaScript,Python,Go和Java的6行中创建机器人,并提供跨平台支持,包括Linux,Windows,MacOS和Docker。
  • Mojo-Weixin:使用Perl语言编写的微信客户端框架,基于Mojolicious,要求Perl版本5.10+,可通过插件提供基于HTTP协议的api接口供其他语言或系统调用
  • itchat4j:是一个开源的微信个人号接口,使用Python调用微信从未如此简单。使用短短的几十行代码,你就可以完成一个能够处理所有信息的微信机器人。

你可能感兴趣的:(python)