【Python微信机器人】第四篇:实战发送文本和图片消息(使用篇)

目录修整

目前的系列目录(后面会根据实际情况变动):

  1. 在windows11上编译python
  2. 将python注入到其他进程并运行
  3. 注入Python并使用ctypes主动调用进程内的函数和读取内存结构体
  4. 调用汇编引擎实战发送文本和图片消息(同时支持32位和64位微信)
  5. 允许Python加载运行py脚本且支持热加载,发布成pypi库,可pip安装
  6. 利用beaengine反汇编引擎的c接口写一个pyd库,用于实现inline hook
  7. 利用beaengine反汇编引擎的python接口写一个py库,用于实现inline hook
  8. 使用inline hook实战接收消息
  9. 读取微信内存中的好友联系人列表的信息结构体数据
  10. 根据bug反馈和建议进行细节上的优化
  11. 做一个僵尸粉检测工具
  12. 其他功能慢慢加

温馨提示

该项目仅做学习使用, 不建议用于实际生产中。因为可能会导致封号,如果想学习的,请使用小号进行测试

文章篇幅过长,这里分为了两个部分:使用篇和讲解篇。如果想了解代码的原理,可以看讲解篇。代码全部都是透明的,有兴趣的可以自己研究看看。

开始测试

环境准备工作
  1. Python环境
  2. Windows微信
  3. 下载github的Python代码

如果你使用的微信版本是64位的(一般都是), 则你需要64位的Python环境;如果你使用的是32位的微信,就用32位的Python。Python的版本随意,只需要是3.8以上的。

支持的微信版本

后续只会更新和维护32位最新版本的微信(原因在之前的文章里提到过)。不过后面如果我看到了适合在Python中hook 64位程序的方法,也会开始更新64位的。

目前支持的微信版本如下:

32位

  • 3.9.7.28
  • 3.9.8.12

64位

  • 3.9.7.29
  • 3.9.8.15
将Python注入到微信进程

先打开并登录微信,然后使用Python执行py_code的inject_dll.py这个文件。它的代码执行流程:先将injectpy.dll复制到Python.exe同级目录 -> 查找微信进程并使用远程线程注入在进程中加载injectpy.dll

*注意:Python必须具有管理员权限,才能使用远程线程注入将dll注入到其他进程。 *

以管理员身份运行Python的方法:将打开Python的编辑器或CMD以管理员身份运行。

接着你就能看到下面的窗口:

添加搜索路径

先在控制台将py_code这个目录加到sys.path里,路径需要修改你的py_code目录

import sys
sys.path.append("T:\Code\PyRobot\part4\py_code")

导入并开始发送消息

在Python控制台依次输入下面几行代码

from sendmsg import SendMsgst = SendMsg()
st.send_text("filehelper", "测试消息!")
st.send_image("filehelper", r"C:\Users\Administrator\Pictures\1111.jpg")

接着就能看到文件传输助手已经把消息发送出去了,如果微信版本不在支持的范围,会抛出异常提示

wxid的获取

发送消息需要先得到好友和群的内部wxid,这个会在这个系列第九篇获取全部好友的wxid、昵称和微信号等信息。可以先关注等待更新。如果你对这个系列也感兴趣,也想参与后续的开发,可以加我好友一起研究。

待完善

后面可以不用打开控制台,将Python注入到微信后,让它执行自定义的脚本。你可以在脚本里使用fastapi或aiohttp公开http接口给其他应用使用。也可以在脚本里就写好你想做的事,比如定时发送消息。另外,在脚本里导入第三方包和平时一样,都是pip安装后import,这样自由度就很高,基本能完成大部分需求

下篇文章内容

下一篇先完善下上面提到的内容:运行自定义Python脚本,再实现下热加载,现在为了调试所以在控制台下操作。再把代码发布到pypi上,之后可以用pip安装,代码里import使用,就省去了去github下载代码,而且更新代码也方便

github源码

https://github.com/kanadeblisst00/PyRobot-part4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/215222.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【电路笔记】-分压器

分压器 文章目录 分压器1、概述2、负载分压器3、分压器网络4、无功分压器4.1 电容分压器4.2 感应分压器 5、总结 有时,需要精确的电压值作为参考,或者仅在需要较少功率的电路的特定阶段之前需要。 分压器是解决此问题的一个简单方法,因为它们…

vue3 for循环创建的多个e-form 添加校验

v-for 创建 ref <el-form :model"item" :rules"state.rules" :ref"el > getRiskSpreadRef(el, index)" ></el-form>// 定义ref list const riskSpreadRefList ref<HTMLElement[]>([]);// ref存到数组 const getRiskSpread…

(Matalb回归预测)GA-BP遗传算法优化BP神经网络的多维回归预测

目录 一、程序及算法内容介绍&#xff1a; 基本内容&#xff1a; 亮点与优势&#xff1a; 二、实际运行效果&#xff1a; 三、部分代码&#xff1a; 四、分享本文全部代码数据说明手册&#xff1a; 一、程序及算法内容介绍&#xff1a; 基本内容&#xff1a; 本代码基于M…

【黑马甄选离线数仓day04_维度域开发】

1. 维度主题表数据导出 1.1 PostgreSQL介绍 PostgreSQL 是一个功能强大的开源对象关系数据库系统&#xff0c;它使用和扩展了 SQL 语言&#xff0c;并结合了许多安全存储和扩展最复杂数据工作负载的功能。 官方网址&#xff1a;PostgreSQL: The worlds most advanced open s…

ModuleNotFoundError: No module named ‘torch_sparse‘

1、卸载 先把torch-geometric、torch-sparse、torch-scatter、torch-cluster、 torch-spline-conv全部卸载了 pip uninstall torch-geometric torch-scatter torch-sparse torch-cluster torch-spline-conv 2.conda list确定PyTorch的版本&#xff0c;我的是1.10 3、确定下载地…

使用v-md-editor开发sql查看器--实战

v-md-editor markdown编辑器 文档&#xff1a;https://code-farmer-i.github.io/vue-markdown-editor/zh/ echo 创建一个空目录&#xff0c;使用vscode打开此空目录&#xff0c;进入终端&#xff0c;输入如下命令 npm create vitelatest . -- --template vue echo 选择 vue 和 …

腾讯云云服务器旗舰新品SA5重磅首发

近日&#xff0c;腾讯云云服务器CVM再升级&#xff0c;极具性价比的云服务器旗舰新机型SA5重磅发布&#xff0c;搭载第四代AMD EPYC处理器&#xff08;Bergamo&#xff09;&#xff0c; 相比云服务器SA3实例&#xff0c;整机性能最大提升120%以上。 温馨提醒&#xff1a;购买腾…

搭建SRS视频服务器

去官方网站下载FFmpeg6.1 https://ffmpeg.org/download.html拷贝到CentOS7.9中的/opt目录下&#xff0c;解压并重命名 tar -xvf ffmpeg-6.1.tar.xz 解压后编译安装 ./configure make make install从github下载SRS4.0release 解压后 如果ffmpeg的路径不在/usr/local/bin/ffmpe…

【沐风老师】在3dMax中如何把对象随机散布在表面上?

在3dMax中如何把对象随机散布在表面上&#xff1f; 在这个教程中&#xff0c;给大家讲解在3dMax中如何把对象随机散布到另一个对象的表面上。有不少3dMax的初学者在将对象分布在随机表面上时感到手足无措。如果&#xff0c;将每个对象手动放置在表面上并花时间调整每个对象根本…

【Vue】filter的用法

上一篇&#xff1a; vue的指令 https://blog.csdn.net/m0_67930426/article/details/134599378?spm1001.2014.3001.5502 本篇所使用指令 v-for v-on v-html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"&…

【面试HOT200】滑动窗口篇

系列综述&#xff1a; &#x1f49e;目的&#xff1a;本系列是个人整理为了秋招面试的&#xff0c;整理期间苛求每个知识点&#xff0c;平衡理解简易度与深入程度。 &#x1f970;来源&#xff1a;材料主要源于【CodeTopHot200】进行的&#xff0c;每个知识点的修正和深入主要参…

喜报|AIRLOOK荣获“创客北京2023”创新创业大赛企业组三等奖

“创客北京2023”创新创业总决赛圆满落幕&#xff0c;埃洛克航空科技&#xff08;北京&#xff09;有限公司&#xff0c;&#xff08;以下统称AIRLOOK&#xff09;首次参赛即从几千家企业中脱颖而出&#xff0c;荣获大赛企业组三等奖。 自2016年开始&#xff0c;“创客北京”大…