位置: IT常识 - 正文

python操作微信客户端:WechatPCAPI库实现自动化回复(python 微信)

编辑:rootadmin

推荐整理分享python操作微信客户端:WechatPCAPI库实现自动化回复(python 微信),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python接入微信,pythonhook微信,weixin-python,python调用微信客户端,python wechat,python wechat,python调用微信客户端,python 操作微信,内容如对您有帮助,希望把文章链接给更多的朋友!

目前有一个项目 WechatPCAPI 可以对微信进行操作,简单来说它是直接操作 PC 版微信客户端的,当然它有一定不足之处就是:PC 版微信客户端和 Python 都需要使用指定版本的,本文我们使用的 Python 版本为 3.7.6 ,微信客户端使用版本为 2.6.8.52 ,WechatPCAPI 的 GitHub 地址为: https://github.com/Mocha-L/WechatPCAPI。

获取好友列表

WechatPCAPI 提供了方法 get_friends(),该方法返回信息包括:好友、群和公众号的列表信息,信息内容主要包括:微信号、昵称和自己设置的备注。

python操作微信客户端:WechatPCAPI库实现自动化回复(python 微信)

我们使用获取的昵称做个简单的词云展示,代码实现如下所示:

logging.basicConfig(level=logging.INFO)defon_message(message):passdefget_friends():#初始化微信实例wx_inst=WechatPCAPI(on_message=on_message,log=logging)#启动微信wx_inst.start_wechat(block=True)#等待登陆成功,此时需要人为扫码登录微信whilenotwx_inst.get_myself():time.sleep(5)print('登陆成功')nicknames=[]#排除的词remove=['还是','不会','一些','所以','果然','起来','东西','为什么','真的','这么','但是','怎么','还是','时候','一个','什么','自己','一切','样子','一样','没有','不是','一种','这个','为了']forkey,valueinwx_inst.get_friends().items():ifkeyin['fmessage','floatbottle','filehelper']or'chatroom'inkey:continuenicknames.append(value['wx_nickname'])words=[]fortextinnicknames:ifnottext:continuefortinjieba.cut(text):iftinremove:continuewords.append(t)globalword_cloud#用逗号隔开词语word_cloud=','.join(words)defnk_cloud():#打开词云背景图cloud_mask=np.array(Image.open('bg.png'))#定义词云的一些属性wc=WordCloud(#背景图分割颜色为白色background_color='white',#背景图样mask=cloud_mask,#显示词数max_words=300,#显示中文font_path='./fonts/simkai.ttf',#尺寸max_font_size=70)globalword_cloud#词云函数x=wc.generate(word_cloud)#生成词云图片image=x.to_image()#展示词云图片image.show()#保存词云图片wc.to_file('nk.png')

看一下效果:

消息防撤回

我们在使用微信和好友聊天时,对方有时会有撤回消息的情况,正常情况下,我们是不知道好友撤回的消息是什么的,通过 WechatPCAPI 就可以实现消息防撤回的功能。

我们知道通常撤回的消息是点击撤回操作前一步发送的内容,当然也可能撤回的是前两步、三步 ... 的消息,这里我们只对撤回前一步的消息做处理,基本思路是:我们将撤回前一步发送的消息存一下,当对方点击撤回操作时,我们再将前一步的消息再次返回给自己。

下面看一下实现代码:

logging.basicConfig(level=logging.INFO)queue_recved_event=Queue()defon_message(msg):queue_recved_event.put(msg)deflogin():pre_msg=''#初始化微信实例wx_inst=WechatPCAPI(on_message=on_message,log=logging)#启动微信wx_inst.start_wechat(block=True)#等待登陆成功,此时需要人为扫码登录微信whilenotwx_inst.get_myself():time.sleep(5)print('登陆成功')whileTrue:msg=queue_recved_event.get()data=msg.get('data')sendinfo=data.get('sendinfo')data_type=str(data.get('data_type'))msgcontent=str(data.get('msgcontent'))is_recv=data.get('is_recv')print(msg)ifdata_type=='1'and'revokemsg'notinmsgcontent:pre_msg=msgcontentifsendinfoisnotNoneand'revokemsg'inmsgcontent:user=str(sendinfo.get('wx_id_search'))recall='撤回的消息:'+pre_msgwx_inst.send_text(to_user=user,msg=recall)

看一下操作

更多python相关内容,请关注python自学网。

本文链接地址:https://www.jiuchutong.com/zhishi/304502.html 转载请保留说明!

上一篇:为WordPress添加Google reCAPTCHA进行人机身份验证(wordpress neve)

下一篇:PHP中ThinkPhp框架的token使用(thinkphp框架怎么用)

  • 黑鲨4s防误触在哪里设置(黑鲨防误触模式在哪里)

    黑鲨4s防误触在哪里设置(黑鲨防误触模式在哪里)

  • ipadmini5电池容量(ipadmini5电池容量掉的很快)

    ipadmini5电池容量(ipadmini5电池容量掉的很快)

  • 投诉成功后卖家还会发货吗(投诉成功卖家会受到什么惩罚)

    投诉成功后卖家还会发货吗(投诉成功卖家会受到什么惩罚)

  • 微信运动加不上好友怎么办(微信运动加不上好友)

    微信运动加不上好友怎么办(微信运动加不上好友)

  • 苹果id无效或不受支持是什么意思(苹果id无效或不受支持怎么办解除)

    苹果id无效或不受支持是什么意思(苹果id无效或不受支持怎么办解除)

  • 自动化与智能化区别(自动化与智能化存在什么关系)

    自动化与智能化区别(自动化与智能化存在什么关系)

  • 91短视频闪退怎么回事(91闪退修复在哪)

    91短视频闪退怎么回事(91闪退修复在哪)

  • 苹果手机刷地铁没反应(苹果手机刷地铁卡需要按两下)

    苹果手机刷地铁没反应(苹果手机刷地铁卡需要按两下)

  • 微软输入法打不出汉字(微软输入法打不出汉字只能打字母)

    微软输入法打不出汉字(微软输入法打不出汉字只能打字母)

  • 触摸板下陷怎么解决(触摸板翘起来怎么解决)

    触摸板下陷怎么解决(触摸板翘起来怎么解决)

  • 电信宽带连接不上怎么回事(电信宽带网络连不上)

    电信宽带连接不上怎么回事(电信宽带网络连不上)

  • 读卡器加内存卡等于u盘吗(读卡器加内存卡能当u盘做系统么)

    读卡器加内存卡等于u盘吗(读卡器加内存卡能当u盘做系统么)

  • 含光800是什么芯片(含光800与华为芯片)

    含光800是什么芯片(含光800与华为芯片)

  • 华为怎么触屏唤醒(华为怎么触摸唤醒)

    华为怎么触屏唤醒(华为怎么触摸唤醒)

  • 荣耀20i有没有返回键(荣耀20返回键怎么调出来)

    荣耀20i有没有返回键(荣耀20返回键怎么调出来)

  • 网页怎么制作(个人网页怎么制作)

    网页怎么制作(个人网页怎么制作)

  • 荣耀9x指纹在哪里(荣耀9x指纹在哪里设置)

    荣耀9x指纹在哪里(荣耀9x指纹在哪里设置)

  • 怎么拍出抖音中间小屏(抖音视频中视频怎么拍)

    怎么拍出抖音中间小屏(抖音视频中视频怎么拍)

  • 计算机二级vc2010编译不了(计算机二级报名官网)

    计算机二级vc2010编译不了(计算机二级报名官网)

  • 小米cc9e如何隐藏应用(小米cc9应用隐身)

    小米cc9e如何隐藏应用(小米cc9应用隐身)

  • vivox27怎么开微信美颜(vivox27怎么开微信视频美颜)

    vivox27怎么开微信美颜(vivox27怎么开微信视频美颜)

  • 电脑管家游戏加速功能是什么?(电脑管家游戏加速怎么卸载)

    电脑管家游戏加速功能是什么?(电脑管家游戏加速怎么卸载)

  • 教你一文解决 js 数字精度丢失问题(js遇到的问题)

    教你一文解决 js 数字精度丢失问题(js遇到的问题)

  • PHPCMS怎么仿站?(dedecms仿站如何做)

    PHPCMS怎么仿站?(dedecms仿站如何做)

  • 个税里的本期收入扣不扣个人社保
  • 实收资本一直挂着其他应收款怎么办
  • 企业购置房产进项被折旧怎么处理
  • 建筑综合税率包含企业所得税吗
  • 金税盘减免政策依据
  • 减免增值税申报表
  • 一般纳税人企业所得税多久申报一次
  • 计提和缴纳企业所得税分录
  • 一般纳税人购入商品取得普通发票
  • 进口免税店的东西都是正品吗
  • 租赁公司扣押金
  • 营改增的范围包括
  • 取得运输部门开具的增值税专用发票
  • 风险溢价包括哪些违约风险溢价 流动性风险溢价
  • 专用发票扣税
  • 开票商品名称是什么意思
  • 稳岗补贴发放给职工需要交个税吗?
  • 科技型中小企业怎么认定
  • 手工发票有效期多久
  • 代扣车船税的手续有哪些
  • 劳务外包业务外包的区别
  • 增值税专用发票的税率是多少啊
  • 费用化支出含义
  • 有限合伙企业需要法人吗
  • 支付水费现金流量
  • win7为什么还有人用
  • 打印机5b00错误解决
  • 专项维修基金会产生利息吗
  • 触电了该怎么做
  • 产供销一体化什么意思
  • 融资租赁账务处理实例承租方
  • 最贵的游戏宣传片
  • 消防工程改造方案
  • php实现分页显示
  • php抓取网页图片
  • 一点分享案例
  • 一万字综述怎么写
  • 应用加载慢
  • linux中login命令
  • 6月收到4月的单子怎么办
  • 首涂第二十一套模板
  • mysql5.7.28解压版安装教程
  • 预收账款和应收账款可以合并吗
  • 按信用风险特征组合
  • 工会经费和福利费绩效目标怎么写
  • 地下车库的成本和房子哪个高
  • 预计负债计提时调减还是调增
  • 公司在银行买的金条怎么入账
  • 债权投资的交易费用计入成本还是利息调整
  • 工伤保险交了就可以报销吗
  • 两个公司的出纳怎么分账
  • 劳务费打到私人账户
  • 未使用的固定资产计提折旧应当计入
  • 代收开票收入怎么做账
  • 低值易耗品和物资的关系
  • 报销单填写发票第几页交给财务
  • 交易性金融资产的入账价值
  • system表空间满了怎么处理
  • win7登录不了系统界面
  • centos 安装教程
  • 乾坤大挪移秘籍图片
  • centos如何操作
  • win7怎么修改开始菜单样式
  • 没有触屏如何使手机充电
  • bootstrap怎么用
  • cocos2dx引擎
  • 使用脚本什么意思
  • js实现@功能
  • javascript零基础
  • javascriptfor循环嵌套
  • python简要介绍
  • jquery删除对象
  • 江苏省税务厅电话
  • 补缴印花税分录
  • 浙江 国家地理
  • 新土地管理法37条解释
  • 赞颂税务工作者绝句
  • 船舶吨税的税目
  • 河北社保网上申报时间
  • 企业资质怎么报审
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设