使用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实现快速排序和插入排序算法及自定义排序的示例
Feb 16 Python
python对json的相关操作实例详解
Jan 04 Python
Python中模块string.py详解
Mar 12 Python
windows下安装python的C扩展编译环境(解决Unable to find vcvarsall.bat)
Feb 21 Python
Python动态导入模块的方法实例分析
Jun 28 Python
浅谈pandas用groupby后对层级索引levels的处理方法
Nov 06 Python
如何利用Python模拟GitHub登录详解
Jul 15 Python
django框架基于queryset和双下划线的跨表查询操作详解
Dec 11 Python
python的sys.path模块路径添加方式
Mar 09 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 Python
python map比for循环快在哪
Sep 21 Python
实例详解Python的进程,线程和协程
Mar 13 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
PHP字符串 ==比较运算符的副作用
2009/10/21 PHP
php获取url字符串截取路径的文件名和扩展名的函数
2010/01/22 PHP
PHP中判断变量为空的几种方法分享
2013/08/26 PHP
php分割合并两个字符串的函数实例
2015/06/19 PHP
PHP递归遍历指定文件夹内的文件实现方法
2016/11/15 PHP
javascript获取ckeditor编辑器的值(实现代码)
2013/11/18 Javascript
js 验证身份证信息有效性
2014/03/28 Javascript
浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
2014/06/11 Javascript
Js实现手机发送验证码时按钮延迟操作
2014/06/20 Javascript
jQuery实现的登录浮动框效果代码
2015/09/26 Javascript
JavaScript中使用sencha gridpanel 编辑单元格、改变单元格颜色
2015/11/26 Javascript
jquery拖动层效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
jQuery网页定位导航特效实现方法
2016/12/19 Javascript
js微信支付实现代码
2016/12/22 Javascript
使用Bootstrap美化按钮实例代码(demo)
2017/02/03 Javascript
JavaScript闭包的简单应用
2017/09/01 Javascript
详解NodeJs开发微信公众号
2018/05/25 NodeJs
python中去空格函数的用法
2014/08/21 Python
Python中__name__的使用实例
2015/04/14 Python
Python中装饰器兼容加括号和不加括号的写法详解
2017/07/05 Python
浅析使用Python操作文件
2017/07/31 Python
python 限制函数调用次数的实例讲解
2018/04/21 Python
Python通过for循环理解迭代器和生成器实例详解
2019/02/16 Python
Python字符串逆序的实现方法【一题多解】
2019/02/18 Python
Django如何自定义model创建数据库索引的顺序
2019/06/20 Python
python实现计算器功能
2019/10/31 Python
Python greenlet和gevent使用代码示例解析
2020/04/01 Python
利用python中的matplotlib打印混淆矩阵实例
2020/06/16 Python
单位成立周年感言
2014/01/26 职场文书
自我评价的范文
2014/02/02 职场文书
《燕子专列》教学反思
2014/02/21 职场文书
2014年文学毕业生自我鉴定
2014/04/23 职场文书
分居协议书范本
2014/11/03 职场文书
计算机专业自荐信范文
2015/03/26 职场文书
农村结婚典礼主持词
2015/06/29 职场文书