[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10781":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":32,"readmeContent":33,"aiSummary":34,"trendingCount":16,"starSnapshotCount":16,"syncStatus":35,"lastSyncTime":36,"discoverSource":37},10781,"easyChat","LTEnjoy\u002FeasyChat","LTEnjoy","微信助手（非web微信版）：定时发送信息；群发信息；自动回复等","",null,"Python",1410,195,22,59,0,4,12,44,16,19.88,false,"main",true,[26,27,28,29,30,31],"autoreply","chatbot","python","timing","uiautomation","wechat","2026-06-12 02:02:26","# easyChat （点击[下载](https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Freleases\u002Flatest)最新exe程序）\n\nPC端微信助手（非web微信版）：定时发送信息；群发信息；自动回复等。直接下载最新的exe即可使用。\n\n最新编辑日期：2026\u002F04\u002F19\n\n有疑问推荐在Issues上提出以供他人参考。\n\n个人邮箱：[sujinltenjoy@gmail.com](mailto:sujinltenjoy@gmail.com)。\n\n如果有帮到您的话，麻烦顺手点个star~\n\n## 目录\n- [更新日志](#更新日志)\n- [前言](#前言)\n- [支持功能](#支持功能)\n- [文件说明](#文件说明)\n- [图形界面](#图形界面)\n- [使用步骤](#使用步骤)\n- [友情赞助](#友情赞助)\n\n## 更新日志\n\n#### 2026\u002F04\u002F19\n\n- 现在支持手动设置微信打开的热键。\n\n#### 2026\u002F04\u002F17\n\n- 新增多微信版本兼容支持。程序现在可以根据用户在界面中选择的微信版本自动加载对应实现，今后微信更新时不同版本的用户可以各自选择对应版本，无需被迫统一升级。\n\n#### 2026\u002F04\u002F09\n\n- 修复了“防止自动下线“开启时导致的程序闪退问题。\n\n\u003Cdetails>\u003Csummary>\u003Cb>展开\u003C\u002Fb>\u003C\u002Fsummary>\n\n#### 2026\u002F03\u002F26\n\n- 更新了程序，现在最新版仅支持微信4.1.8版本及以上。 \n\n#### 2026\u002F03\u002F23\n\n- 添加了定时任务出错时的报错提醒 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fissues\u002F162 。 \n\n#### 2026\u002F03\u002F09\n\n- 修复了程序打开微信时会弹出新的登录界面的问题，现在采取了全新的打开微信方式。\n\n#### 2026\u002F02\u002F24\n\n- 修复了定时发送时会发送过期的定时任务问题。\n\n#### 2026\u002F01\u002F30\n\n- 修复了获取微信好友列表时自动停止的问题。\n\n#### 2026\u002F01\u002F27\n\n- 现在用户上传文件支持多选文件，节省效率。\n\n#### 2025\u002F12\u002F07\n\n- 实现了在微信新版本下的提取联系人列表和群聊列表的功能。\n\n#### 2025\u002F12\u002F02\n\n- 修复了群聊因为无法展示在搜索第一行导致无法发送信息的问题，现在搜索将自动忽略搜索栏目。\n\n#### 2025\u002F11\u002F28\n\n- 现在easyChat支持微信4.1版本,原来的3.9版本已被弃用🥳🥳🥳。\n\n#### 2025\u002F08\u002F30\n\n- 优化了定时发送功能，见 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fpull\u002F126 。 感谢[@wustghj](https:\u002F\u002Fgithub.com\u002Fwustghj)。\n\n#### 2025\u002F05\u002F30\n\n- 修正了定时时多余空格导致的格式问题，见 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fissues\u002F113 。\n\n#### 2025\u002F05\u002F10\n\n- 增加了获取当前对话人昵称的函数``get_current_name()``，见 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fissues\u002F112 。\n\n#### 2025\u002F03\u002F29\n\n- 将发送信息与@他人的功能合并为一个函数，允许用户在@他人的同时发送信息，见 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fissues\u002F104 。感谢[@Halogly](https:\u002F\u002Fgithub.com\u002FHalogly)提供的灵感。\n\n\n#### 2025\u002F03\u002F15\n\n- 增加了配置文件的自动更新，现在**用户的所有操作都会被自动存储并且自动加载**，不用担心重启程序后之前的操作丢失。感谢[@Mcayear](https:\u002F\u002Fgithub.com\u002FMcayear)提供的灵感。\n\n\n#### 2025\u002F02\u002F14\n- 修复了获取微信全部好友功能的bug。\n\n#### 2025\u002F01\u002F17\n- 增加了对exe程序自适应屏幕尺寸的支持，现在可以在不同分辨率的屏幕上正常显示。\n\n#### 2024\u002F11\u002F19\n- 增加了exe程序对微信多种语言模式的支持（简体中文，繁体中文以及英文）。\n- 现在获取微信好友列表的同时还能够获取他们的备注名以及标签，方便后续根据标签群发好友。\n\n#### 2024\u002F10\u002F17\n- 修复了当其中一个联系人发送失败时影响后续所有发送的bug， 见 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fissues\u002F73 。\n\n#### 2024\u002F09\u002F17\n- 现在支持代码层面根据时间信息分块获取聊天记录,见https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fpull\u002F70 。感谢[@宇宇](https:\u002F\u002Fgithub.com\u002Fxieyumc)。\n\n#### 2024\u002F08\u002F16\n- 现在支持一条信息换行发送，可以在输入内容时使用“\\n”进行换行，例如：“你好\\n我是xx”。\n\n#### 2024\u002F08\u002F13\n- 加入了判断消息是否发送成功的返回值，见https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fpull\u002F67 。感谢[@宇宇](https:\u002F\u002Fgithub.com\u002Fxieyumc)。\n\n#### 2024\u002F07\u002F22\n- 现在可以一次性实现多个定时时间的输入，降低了重复操作的繁琐性。\n\n#### 2024\u002F07\u002F11\n- 上传了打包函数，用户现在可以自己打包exe文件。运行``python pack.py``即可。\n\n#### 2024\u002F07\u002F03\n\n- 增加了发送不同用户时的间隔时间选项，现在可以在发送不同用户时设置间隔时间（防止发送太频繁被强制下线）。\n\n#### 2024\u002F07\u002F02\n\n- 增加了保存所有群聊名称的功能按钮。\n\n#### 2024\u002F06\u002F28\n\n- 优化了发送信息的逻辑，现在对同一用户发送信息只需要搜索用户一次即可全部发送。\n\n#### 2024\u002F05\u002F08\n\n- 修复了获取聊天记录时滚动条不显示时的逻辑bug，见 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fpull\u002F45 。感谢[@T-K-233](https:\u002F\u002Fgithub.com\u002FT-K-233)。\n\n#### 2024\u002F05\u002F03\n\n- 修改了防自动下线功能的间隔时间，现在每一小时触发一次,不会影响自动发送功能的正常使用。\n\n#### 2024\u002F04\u002F29\n\n- 增加了防止微信长时间挂机掉线的功能，要开启该功能直接点击“防止自动下线（目前关闭）”按钮。\n\n#### 2024\u002F04\u002F16\n\n- 目前定时功能支持自定义年月日，具体请看输入提示。\n\n#### 2023\u002F12\u002F28\n\n- 增加了对微信多种语言模式的支持（简体中文，繁体中文以及英文）。[@T-K-233](https:\u002F\u002Fgithub.com\u002FT-K-233)\n\n#### 2023\u002F11\u002F21\n\n- 完善了README.md文件。\n- 调整了自动获取信息的代码，支持用户自定义自动回复的代码。 （参考 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fissues\u002F33 ）\n\n#### 2023\u002F11\u002F17\n\n- 修复了获取聊天记录代码的报错。\n\n#### 2023\u002F08\u002F01\n\n- 修复了无法at他人的bug。\n\n#### 2023\u002F07\u002F24\n\n- 现在程序在无法发送时会进行报错，不会直接闪退。\n- 现在用户可以通过按下\"ctrl + alt + q\"来终止发送。\n\n#### 2023\u002F07\u002F22  \n\n- 现在代码调用方式支持存储聊天记录的图片和视频。\n\n#### 2023\u002F07\u002F19  \n\n- 对输入方式进行了优化。\n- 现在支持加载内容txt文件。\n- 现在一条信息可以指定用户发送而不是默认全部发送。\n\n#### 2023\u002F06\u002F21  \n\n- 现在ui界面支持读取微信联系人并存储成txt文件用于加载。\n\n#### 2023\u002F06\u002F20  \n\n- 修复了当好友数过少无法获取联系人的bug。\n\n#### 2023\u002F06\u002F13\n\n- 修复版本更新导致代码调用无法发送信息的bug。\n\n#### 2022\u002F11\u002F22\t\n\n- 修正了文件版本更新混乱导致的出错问题。\n\n#### 2022\u002F11\u002F03\t\n\n- 现在可以一次性添加多个人名，输入时通过英文逗号‘,’分隔即可。\n\n#### 2022\u002F09\u002F26\t\n\n- 定时发送现在可以指定发送内容的范围（详情请使用最新版exe时看输入提示）。\n\n#### 2022\u002F09\u002F16\t\n\n- 新增获取窗口聊天记录的功能（仅支持代码调用）。\n\n#### 2022\u002F07\u002F27\t\n\n- 完成发送内容的优化，现在支持微信群@他人的操作\n\n#### 2022\u002F07\u002F07\t\n\n- 完成发送内容的优化，现在支持一次定时按顺序发送多条信息。\n\u003C\u002Fdetails>\n\n## 前言\n\n之前使用过的itchat等工具都是基于web版网页微信的。自从网页微信无法登陆之后，之前的工具都失效了。因此，本人采用[uiautomation](https:\u002F\u002Fgithub.com\u002Fyinkaisheng\u002FPython-UIAutomation-for-Windows)对微信进行~~暴力~~操作，就有了本仓库。并且用~~自学了三年的图形界面水平~~写了个简易ui供大家使用。\n\n> 注意：请确保输入相应内容时严格按照示例的内容格式进行，以保证代码的正确执行。\n\n## 支持功能\n\n### 图形界面方式：\n\n- 群发消息\n- 定时发送消息\n- 自动回复（参考 https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Fissues\u002F33 ）\n\n> 注意事项：请在使用过程中严格遵守输入格式，否则程序会自动退出。（要去考虑一个个边界条件太麻烦了，我直接采取一个鸵鸟政策）。\n\n### 代码调用方式：\n\n- 搜索指定用户名的联系人发送信息，同时可在指定群聊中@他人 -> def send_msg()\n\n- 搜索指定用户名的联系人发送文件 -> def send_file()\n\n- 获取所有通讯录中所有联系人 -> def find_all_contacts()\n\n- 自动检测新消息 -> def check_new_msg()\n\n- 设置自动回复的联系人列表 -> def set_auto_reply()\n\n- 获取指定聊天窗口的聊天记录 -> def get_dialogs()\n\n- 获取指定聊天窗口的图片和视频 -> def save_dialog_pictures()\n\n> 注意事项：请进入 **versions\u002F** 目录下对应你微信版本的文件内部进行调用（例如 `wechat_4_1_9_21.py`）。内部代码简易注释详尽，可以自由尝试。\n\n## 文件说明\n\n###### **pack.py**\n打包函数，用户直接运行``python pack.py``即可打包exe文件。\n\n###### **automation.py**\n可视化控件树的文件，针对希望DIY的用户，方便进行控件类型和深度的查看。\n\n###### **clipboard.py**\n提供了对文件的复制操作，调用函数即可将指定路径的文件复制到剪切板。\n\n###### **versions\u002F**\n存放各微信版本对应的操作实现代码。每个文件以微信版本号命名（如 `wechat_4_1_9_21.py`），内含该版本下的完整 WeChat 操作实现，支持自由 DIY。`__init__.py` 为版本注册表，程序启动时根据用户在界面中选择的版本自动加载对应文件。\n\n###### **wechat_locale.py**\n提供了对微信多种语言的支持，可以根据自己的需要进行选择。\n\n###### **wechat_gui.py**\n是编写的图形界面，在图形界面中调用对微信的操作。由于本人太懒，直接放弃美工，后期边做边改吧。\n\n###### **module.py**\n\n控件模块，组成UI界面的小组件。\n\n###### **wechat_gui.exe**\n是打包好的exe程序，可以直接下载进行使用。也可以对**wechat_gui.py**进行打包生成exe文件。\n\n## 图形界面\n\n\u003Cimg src=\"pictures\u002FGUI.png\" alt=\"GUI\" style=\"zoom: 80%;\" \u002F>\n\n\t\t\t**图形界面示意图**\n\n## 使用步骤\n\n#### 基础操作\n\n1. 参考[这里](https:\u002F\u002Fgithub.com\u002FLTEnjoy\u002FeasyChat\u002Freleases\u002Ftag\u002FeasyChat_20251128(%E6%94%AF%E6%8C%81%E5%BE%AE%E4%BF%A14.1%E7%89%88%E6%9C%AC))通过打开“讲述人”模式让程序能够正确读取微信界面。\n\n2. 点击“选择微信打开路径”，在目录下选择微信的可执行exe文件。\n\n3. 点击“添加用户”，输入要发送信息的用户名（在搜索框第一个展示的名字，如下所示，注意现在输入群聊名称默认上方会有搜索栏目，程序会自动忽略，只要确保要发送的群聊在联系人中是第一个出现的即可）。\n\n   ![搜索示例](pictures\u002F搜索示例.png)\n\n4. 点击文本框右侧的添加按钮，选择添加文本或文件。添加的内容会在发送时按添加的顺序一次发送。\n\n5. （可选）如果要进行定时发送，点击下方的“添加时间”按钮，按照规定的格式添加时间。随后点击“开始定时”，当时间达到列表中的指定时间时，便会将指定的消息发送给指定的用户。\n\n#### 微信群@他人\n\n1. 提前查看微信群里要@的人的名字\n\n   ![@他人](pictures\u002F@他人.png)\n\n2. 在界面中填写你要@的人名\n\n   ![@他人添加](pictures\u002F@他人添加.png)\n\n> 注意：@所有人时请确保拥有微信群@所有人的权限，否则将失败。\n\n#### 加载用户txt文件\n\n用户可以提前查看所有要发送的对象的名字，并存储在一个txt文件中，之后点击”加载用户txt文件“按钮，即可自动加载所有对象。\n\n用户txt文件格式如下：\n\n\u003Cimg src=\"pictures\u002F%E5%8A%A0%E8%BD%BD%E7%94%A8%E6%88%B7txt.png\" alt=\"加载用户txt\" style=\"zoom:50%;\" \u002F>\n\n每一行都是一个对象的名字。\n\n#### 加载内容txt文件\n\n你可以提前写下要发送的内容，并存储在一个txt文件中，之后点击”加载内容txt文件“按钮，即可自动加载所有内容。\n如果在一条内容中想要进行换行，可以在内容中使用“\\n”进行换行，例如：“你好\\n我是xx”。\n\n> 注意事项：该方式仅支持发送文本内容\n\n内容txt文件格式如下：\n\n\u003Cimg src=\"pictures\u002F%E5%8A%A0%E8%BD%BD%E5%86%85%E5%AE%B9txt.png\" alt=\"加载内容txt\" style=\"zoom:50%;\" \u002F>\n\n每一行都是一条内容消息。在输入内容之前，你需要先指定该条消息要发送给哪些对象：\n\n- 如果默认发送给所有对象，则输入all:，然后写上要发送的内容\n- 如果要发送给指定的对象，则输入用户的编号，多个用户之间用英文逗号分隔（如1,2,3），然后写上要发送的内容\n\n> 注意事项：不同列之间要用英文冒号进行分隔\n\n## 友情赞助\n\n如果你觉得这款应用不错的话，麻烦顺手点个star。也可以请作者喝杯奶茶，让我在日常生活中感受到一些小确幸~\n\n\u003Cimg src=\"pictures\u002F%E5%BE%AE%E4%BF%A1%E6%94%B6%E6%AC%BE%E7%A0%81.jpg\" alt=\"微信收款码\" style=\"zoom:25%;\" \u002F>\n\n\u003Cimg src=\"pictures\u002F%E6%94%AF%E4%BB%98%E5%AE%9D%E6%94%B6%E6%AC%BE%E7%A0%81.jpg\" alt=\"支付宝收款码\" style=\"zoom:25%;\" \u002F>\n","easyChat 是一个 PC 端微信助手，支持定时发送信息、群发信息和自动回复等功能。项目使用 Python 开发，通过 UI 自动化技术实现对微信客户端的控制，无需依赖 Web 微信接口。它具有定时任务管理、多版本微信兼容性以及自适应屏幕尺寸等特性，同时提供了获取联系人列表、聊天记录分块读取等功能。适用于需要批量处理微信消息的场景，如企业营销、活动通知或个人事务提醒等。",2,"2026-06-11 03:30:08","top_topic"]