Python使用wxpy模块实现微信两两群组消息同步功能(推荐)

 更新时间:2022年06月29日 15:55:45   作者:skaarl  
这篇文章主要介绍了Python使用wxpy模块实现微信两两群组消息同步,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

wxpy也是一个python的模块,利用它我们可以做很多有意思的事情,今天通过本文给大家介绍Python使用wxpy模块实现微信两两群组消息同步功能。

安装模块:

pip install wxpy

注意:需要同步的微信群需要保存到通讯录中

以下是自己闲来无事写的代码,暂时还存在以下几个问题,有能优化的大佬可以讨论下:

1.暂时同步不了大文件,测试发现超过40M的文件无法同步;

2.频发发送消息时可能导致有的消息丢失;

3.项目不稳定,有时会掉线,脚本需要重启后重新登录微信

直接上代码

import time
from wxpy import *
# 用同步的微信群,为双重列表,最里层列表为要同步的微信群,可以有多个
need_group = [['客户1群', '技术1群'],
              ['客户2群', '技术2群'],
              ['客户3群', '技术3群'],
              ]
# 需要屏蔽的人
except_list = ["张三", "李四"]
# 保存搜索结果的对象双重列表
group_obj_list = [[] for _ in range(len(need_group))]
# 初始化机器人,电脑弹出二维码,用手机微信扫码登陆
bot = Bot()
# 微信登陆后,更新微信群列表(包括未保存到通讯录的群)
bot.groups(update=True, contact_only=False)
# 往微信助手发消息
bot.file_helper.send('wechat bot login success.')
# 查找群
try:
    for i in range(len(need_group)):
     
     # 注意: 暂时发现需要搜索的群需要保存到通讯录中
        my_groups_Q1 = bot.groups().search(need_group[i][0])[0]
        my_groups_Q2 = bot.groups().search(need_group[i][1])[0]
        # 更新群消息
        my_groups_Q1.update_group(members_details=True)
        my_groups_Q2.update_group(members_details=True)
        group_obj_list[i].append(my_groups_Q1)
        group_obj_list[i].append(my_groups_Q2)
except:
    pass
def send_message(msg, group_list):
    try:
        # 屏蔽某人
        if msg.member.name not in except_list:
       # 使用API提供的函数同步消息
            sync_message_in_groups(msg, group_list, prefix="")
    except:
        pass
# 暂时发现绑定监听事件是阻塞事件,需要一个一个帮忙,用循环绑定的话只能绑定第一个
# 同步1群
@bot.register(group_obj_list[0], except_self=False)
def sync_my_groups_00(msg):
    send_message(msg, group_obj_list[0])
# 同步2群
@bot.register(group_obj_list[1], except_self=False)
def sync_my_groups_01(msg):
    send_message(msg, group_obj_list[1])
# 同步3群
@bot.register(group_obj_list[2],  except_self=False)
def sync_my_groups_02(msg):
    send_message(msg, group_obj_list[2])
# 每过30min往微信助手发送消息,不发则说明程序崩溃
while True:
    DATE = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
    bot.file_helper.send('程序运行中', DATE)
    time.sleep(1800)
embed()
# 堵塞线程,让机器人保持运行
bot.join()

同步微信群时默认的前缀为表情加微信名,如果想去掉的话,点击进入sync_message_in_groups函数修改下源码,如下图

到此这篇关于Python使用wxpy模块实现微信两两群组消息同步功能(推荐)的文章就介绍到这了,更多相关Python微信两两群组消息同步内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python命令行模式的用法及流程

    python命令行模式的用法及流程

    在本篇文章里小编给大家整理的是一篇关于python命令行模式的用法及流程相关内容,有兴趣的朋友们可以跟着学习下。
    2021-09-09
  • Python中操作各种多媒体,视频、音频到图片的代码详解

    Python中操作各种多媒体,视频、音频到图片的代码详解

    这篇文章主要介绍了Python玩转各种多媒体,视频、音频到图片,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • Python制作圣诞树和圣诞树词云

    Python制作圣诞树和圣诞树词云

    本文主要介绍了利用Python制作三种不同形状的圣诞树和圣诞树词云,文中的示例代码讲解详细,对我们学习Python有一定的帮助,快跟随小编一起学习吧
    2021-12-12
  • python畅玩os模块以及顺便批量修改图片尺寸

    python畅玩os模块以及顺便批量修改图片尺寸

    这篇文章主要介绍了python畅玩os模块以及顺便批量修改图片尺寸方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Pycharm内置终端及远程SSH工具的使用教程图文详解

    Pycharm内置终端及远程SSH工具的使用教程图文详解

    这篇文章主要介绍了Pycharm内置终端及远程SSH工具的使用教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • Python实现基于二叉树存储结构的堆排序算法示例

    Python实现基于二叉树存储结构的堆排序算法示例

    这篇文章主要介绍了Python实现基于二叉树存储结构的堆排序算法,结合实例形式分析了Python二叉树的定义、遍历及堆排序算法相关实现技巧,需要的朋友可以参考下
    2017-12-12
  • Python计算标准差之numpy.std和torch.std的区别

    Python计算标准差之numpy.std和torch.std的区别

    Torch自称为神经网络中的numpy,它会将torch产生的tensor放在GPU中加速运算,就像numpy会把array放在CPU中加速运算,下面这篇文章主要给大家介绍了关于Python Numpy计算标准差之numpy.std和torch.std区别的相关资料,需要的朋友可以参考下
    2022-08-08
  • python中jsonpath的使用小结

    python中jsonpath的使用小结

    JsonPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,本文主要介绍了python中jsonpath的使用小结,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Python实现轻松读取大文件的技巧揭秘

    Python实现轻松读取大文件的技巧揭秘

    Python提供了多种方法来读取文件内容,其中包括read()、readline()和readlines()三个常用的函数,本文将深入探讨这三个函数的使用方法,需要的可以参考一下
    2023-08-08
  • python实现简单的udp发送和接收

    python实现简单的udp发送和接收

    这篇文章主要介绍了python实现简单的udp发送和接收方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09

最新评论