• Python自制微信机器人:群发消息、自动接收好友


    程序员鼓励师

    运营公众号也有半年了,今年5月份开始的,之前一直用一款windows工具来运营自动接受好友请求、群发文章、自动回复等操作,但颇有不便。

    举几个场景:

    1. 突然在外面看到一篇文章很好,临时写了一篇,想群发一下。
    2. 好友加我微信后,每次都要手动备注。

    这些使用客户端工具都无法解决,因为客户端工具的一个特点就是native,需要你直接操作电脑,不方便。

    所以就想着自己写一个干脆,经过一周漫长的开发(主要是时间太零散了),把第一版定制化微信机器人给完成了,第一版里实现了几个功能:

    1. 自动添加好友,并同时根据附加信息打备注。
    2. 根据不同的分组,进行群发消息。因为有些群只允许你21:00~09:00,你中午发的时候就要屏蔽他,有的群是禁止发的,那你也要屏蔽。
    3. 根据关键字回复消息、图片等。

    那先来看看效果:
    python微信机器人
    python微信机器人
    python微信机器人

    第一版的功能非常简陋,而且不易扩展,但解决了我的基本用途,之后这个项目我会持续根据维护。

    那么接下来就来看一些核心代码:
    python微信机器人
    FileHelper类定义了所有的交互式指令集合,微信官方提供了文件传输助手这个功能,我们就要用好他嘛~

    那这个_register_mass函数就在做一件事情:注册群发消息。

    只要指令集和群发有关,就用这个函数去注册,因为群发包括很多指令集:群发消息,群发文章,群发图片,群发语音等等。所以有了这个注册器后,之后的函数就相对简单了:
    在这里插入图片描述

    另外,为了让匹配速度更快些,我特地开了一个子线程去同步本地的群组列表,把列表维护在内存里使得速度更快些。

    整个项目目录还是比较复杂的,以上只是节选了部分关键代码:
    在这里插入图片描述

    之后的话,准备把代码健硕起来,使用说明、日志等,然后功能继续迭代,比如:识别公众号URL地址自动转换成文章转发格式,自动邀请入群等。

    关注公众号「Python专栏」后台回复:wxRobot,获取完整微信机器人源码。

    Python专栏二维码
  • 相关阅读:
    angularjs中的页面访问权限设置
    Html页面head标签元素的意义和应用场景
    脚本引用中的defer和async的用法和区别
    自适应页面中如何使用雪碧图
    网页颜色分辨测试小游戏的js化辨别及优化
    jQuery1.9及其以上版本中动态元素on绑定事件无效解决方案
    Data URL简介及Data URL的利弊
    浏览器调试:事件定位与源码查找
    简述ES5 ES6
    移动端中pagehide、pageshow的应用
  • 原文地址:https://www.cnblogs.com/moonhmily/p/10561773.html
Copyright © 2020-2023  润新知