【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 SendMsg

st = 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

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,295评论 6 512
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,928评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,682评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,209评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,237评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,965评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,586评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,487评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,016评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,136评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,271评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,948评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,619评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,139评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,252评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,598评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,267评论 2 358

推荐阅读更多精彩内容