使用PyWeChatSpy自动回复微信拍一拍功能的实现代码


Posted in Python onJuly 02, 2020

使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

前不久微信上线了拍一拍功能,刚推出就被有才的网友玩坏了。

使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

还有更多没有节操的拍法这里就不展示了。

但拍一拍属于弱提示,只有在聊天界面才能感受到。如果不在微信界面,被人拍了没办法及时回应,这里给大家介绍一下如何使用PyWeChatSpy(https://github.com/veikai/PyWeChatSpy)来用表情包回应拍一拍。

1、首先我们准备一些表情图,这里我选了沙雕熊猫头

使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

2、安装2.8.0.133版本的PC微信客户端(https://share.weiyun.com/5AwuXRG)

3、安装Python3.8.3_x64 32位系统(https://www.python.org/ftp/python/3.8.3/python-3.8.3-amd64.exe)的同学可以去官网自行下载32位安装包

使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

4、打开cmd 输入pip install PyWeChatSpy 回车执行

使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

5、这时候需要我们编码了,先新建一个app.py文件

 先引入PyWeChatSpy模块、正则re模块和随机random模块 re用于匹配消息内容,random用于随机选取回复图片 

from PyWeChatSpy import WeChatSpy 
import random 
import re

 接着定义一个回复处理函数my_parser

def my_parser(data): 
 pass

 然后实例化一个WeChatSpy类 

spy = WeChatSpy(parser=my_parser)

 最后编写my_parser函数处理逻辑 

if data["type"] == 5: # 判断是微信消息数据 
 for msg in data["data"]: # 遍历微信消息 
 if msg["msg_type"] == 10000: # 判断是微信拍一拍系统提示 
  # 因为微信系统消息很多 因此需要用正则匹配消息内容进一步过滤拍一拍提示 
  # {'self': 0, 'msg_type': 10000, 'wxid1': '179xxxxxx72@chatroom', 'content': '"Mandy的小脑袋" 拍了拍你'} 
  m = re.search('".*" 拍了拍你', msg["content"]) 
  if m: # 搜索到了匹配的字符串 判断为拍一拍 
  image_path = f"images/{random.randint(1, 7)}.jpg" # 随机选一张回复用的图片 
  spy.send_file(msg["wxid1"], image_path) # 发送图片

 运行代码 

if __name__ == '__main__': 
 spy.run() # 运行代码

大功告成 这时候如果再有人拍你 无论是群聊还是私聊都会自动回复设置好的图片

使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

整体代码如下:

from PyWeChatSpy import WeChatSpy 
import random 
import re 
def my_parser(data): 
 if data["type"] == 5: # 判断是微信消息数据 
 for msg in data["data"]: # 遍历微信消息 
  if msg["msg_type"] == 10000: # 判断是微信拍一拍系统提示 
  # 因为微信系统消息很多 因此需要用正则匹配消息内容进一步过滤拍一拍提示 
  # {'self': 0, 'msg_type': 10000, 'wxid1': '179xxxxxx72@chatroom', 'content': '"Mandy的小脑袋" 拍了拍你'} 
  m = re.search('".*" 拍了拍你', msg["content"]) 
  if m: # 搜索到了匹配的字符串 判断为拍一拍 
   image_path = f"images/{random.randint(1, 7)}.jpg" # 随机选一张回复用的图片 
   spy.send_file(msg["wxid1"], image_path) # 发送图片 
spy = WeChatSpy(parser=my_parser) # 实例化WeChatSpy类 
if __name__ == '__main__': 
 spy.run() # 运行代码

app.py存放的地方要和图片文件夹一致,否则无法正确回复,如图片路径D:\images,app.py存放路径为D:\app.py 暂不支持中文路径

到此这篇关于使用PyWeChatSpy自动回复微信拍一拍功能的文章就介绍到这了,更多相关PyWeChatSpy自动回复微信拍一拍内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python使用百度API上传文件到百度网盘代码分享
Nov 08 Python
讲解Python中for循环下的索引变量的作用域
Apr 15 Python
在Docker上开始部署Python应用的教程
Apr 17 Python
Python全局变量用法实例分析
Jul 19 Python
TensorFlow实现创建分类器
Feb 06 Python
Python装饰器知识点补充
May 28 Python
python使用pipeline批量读写redis的方法
Feb 18 Python
Django实现跨域请求过程详解
Jul 25 Python
pandas 空数据处理方法详解
Nov 02 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
Feb 18 Python
tensorflow从ckpt和从.pb文件读取变量的值方式
May 26 Python
如何在pycharm中快捷安装pip命令(如pygame)
May 31 Python
使用Keras建立模型并训练等一系列操作方式
Jul 02 #Python
python解释器安装教程的方法步骤
Jul 02 #Python
Python分析最近大火的网剧《隐秘的角落》
Jul 02 #Python
keras训练浅层卷积网络并保存和加载模型实例
Jul 02 #Python
Python RabbitMQ实现简单的进程间通信示例
Jul 02 #Python
利用scikitlearn画ROC曲线实例
Jul 02 #Python
Python使用文件操作实现一个XX信息管理系统的示例
Jul 02 #Python
You might like
DIY一个适配电脑声卡的动圈话筒放大器
2021/03/02 无线电
php中flush()、ob_flush()、ob_end_flush()的区别介绍
2013/02/17 PHP
一个漂亮的php验证码类(分享)
2013/08/06 PHP
图解找出PHP配置文件php.ini的路径的方法
2014/08/20 PHP
LAMP环境使用Composer安装Laravel的方法
2017/03/25 PHP
Laravel如何友好的修改.env配置文件详解
2017/06/07 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
javascript 浏览器检测代码精简版
2010/03/04 Javascript
JS 遮照层实现代码
2010/03/31 Javascript
Js切换功能的简单方法
2010/11/23 Javascript
用JS提交参数创建form表单在FireFox中遇到的问题
2013/01/16 Javascript
js实现按钮加背景图片常用方法
2014/11/01 Javascript
jQuery滚动条插件nanoscroller使用指南
2015/04/21 Javascript
jQuery实现向下滑出的二级菜单效果实例
2015/08/22 Javascript
AngularJS 单元测试(一)详解
2016/09/21 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
2016/10/10 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
原生JS查找元素的方法(推荐)
2016/11/22 Javascript
详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现
2017/03/11 Javascript
node中使用es5/6以及支持性与性能对比
2017/08/11 Javascript
基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果
2018/01/09 Javascript
解决修复npm安装全局模块权限的问题
2018/05/17 Javascript
vue-socket.io跨域问题有效解决方法
2020/02/11 Javascript
详解Vue Cli浏览器兼容性实践
2020/06/08 Javascript
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
Sanic框架安装与简单入门示例
2018/07/16 Python
python使用原始套接字发送二层包(链路层帧)的方法
2019/07/22 Python
详解python 破解网站反爬虫的两种简单方法
2020/02/09 Python
python用分数表示矩阵的方法实例
2021/01/11 Python
小学英语教学反思案例
2014/02/04 职场文书
论文答谢词
2015/01/20 职场文书
父亲去世追悼词
2015/06/23 职场文书
2016年领导干部正风肃纪心得体会
2015/10/09 职场文书
Python tensorflow卷积神经Inception V3网络结构
2022/05/06 Python
Echarts如何重新渲染实例详解
2022/05/30 Javascript