一、主要通过 1、百度orc识别图片的文字

2、pyautogui截图,模拟粘贴

3、pymouse模拟鼠标点击

4、pyperclip模拟键盘复制

二、思路:

1、对微信聊天框进行截图作为原始图1
2、循环对聊天框进行截图,和原始图1进行相似度对比
3、如果相似度有差距,判定为有新的消息
4、对聊天区域进行截图,识别聊天的文字
5、通过预置的聊天对话,进行回复
6、循环2

三、效果:

四、插入代码:

main.py

'''
自动聊天小工具
'''
import os
import timefrom aip import AipOcr
from skimage.measure import compare_ssim
import cv2
import pyautogui
from pymouse import PyMouse
from conf import *
from pyperclip import copy, pasteclass Wechat:def __init__(self):self.one_abs = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'one.jpg')self.two_abs = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'two.jpg')self.read_need = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'read.jpg')self.client = AipOcr(APP_ID, API_KEY, SECRET_KEY)self.mouse = PyMouse()self.message = {"在吗?": '亲爱的,我在!',"你在干什么?": "亲爱的,我在学习!","吃饭了吗": '还没有,一会下班了一块吃大餐!'}def click(self, x, y, m):m.click(x, y)def snap(self, x, y, w, h, name):# 截图if os.path.exists(name):os.remove(name)im = pyautogui.screenshot(region=(x, y, w, h))  # 左上,宽高im.save(name)def compare_image(self, path_image1, path_image2):imageA = cv2.imread(path_image1)imageB = cv2.imread(path_image2)grayA = cv2.cvtColor(imageA, cv2.COLOR_BGR2GRAY)grayB = cv2.cvtColor(imageB, cv2.COLOR_BGR2GRAY)(score, diff) = compare_ssim(grayA, grayB, full=True)print("SSIM: {}".format(score))return scoredef get_file_content(self, filePath):with open(filePath, 'rb') as fp:return fp.read()def run(self):# 1、对微信聊天框进行截图作为原始图1self.snap(876, 149, 875, 800, self.one_abs)i = 0while True:i += 1print('===idx:{}'.format(i))# 2、循环对聊天框进行截图,和原始图1进行相似度对比self.snap(876, 149, 875, 800, 'two.jpg')same = self.compare_image(self.one_abs, self.two_abs)print('====相似度:{}'.format(same))if same < 0.98:# # 3、如果相似度有差距,判定为有新的消息# 4、对聊天区域进行截图,识别聊天的文字self.snap(876, 695, 486, 55, 'read.jpg')image = self.get_file_content(self.read_need)r = self.client.basicGeneral(image)res_msg = r.get('words_result')[0].get('words')# 5、通过预置的聊天对话,进行回复send_msg = self.message.get(res_msg)print(send_msg)self.click(1131, 840, self.mouse)copy(send_msg)pyautogui.hotkey('ctrl', 'v')self.click(1284, 923, self.mouse)self.click(1053, 1061, self.mouse)time.sleep(1)self.snap(876, 149, 875, 800, self.one_abs)else:continuepassif __name__ == '__main__':Wechat().run()

conf

# 百度信息
APP_ID = '2447122254'
API_KEY = 'Hj3stMaaZ1jAdeGfLd6wIO14dSlWc'
SECRET_KEY = 'jn1G6CjlPtfSEpmOGxREOQ4N2R58aVXT0z'

python微信自动聊天小工具相关推荐

  1. python微信自动聊天,自动保存图片语音文件

    点击下载附件-微信自动托管回复

  2. python socket能做什么_用python写一个聊天小程序!和女朋友的专属聊天工具!

    原标题:用python写一个聊天小程序!和女朋友的专属聊天工具! 1.UDP简介 Internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP).UDP为应用程序提供了无需建立就可 ...

  3. 微信自动聊天机器狗,配置chatGPT,比Siri还智能!

    大家好,我是TheWeiJun:最近看见微信里各个群聊都在聊chatGPT,甚至有的大佬们都把chatGPT接入了微信群聊,于是就有粉丝来找小编,希望能出一期chatGPT的文章:故今天这篇文章我将手 ...

  4. python微信跳一跳小游戏刷分

    iOS #python 微信跳一跳小游戏刷分 首先我们安装Facebook的WebDriverAgent,这是一款新的iOS移动测试框架 在GitHub上找到https://github.com/fa ...

  5. 使用Android辅助功能AccessibilityService实现微信自动聊天【外挂插件】

    本文是使用Android辅助功能AccessibilityService实现微信自动聊天demo: 只是为了跟深入的了解Android辅助功能, 提高自身的动手能力. 请勿用于商用,或非法用途. 动手 ...

  6. 小猪的Python学习之旅 —— 19.Python微信自动好友验证,自动回复,发送群聊链接

    小猪的Python学习之旅 -- 19.Python微信自动好友验证,自动回复,发送群聊链接 标签:Python 一句话概括本文: 上一节利用itchat这个库,做了小宇宙早报的监测与转发, 本节新增 ...

  7. 【kimol君的无聊小发明】—用python写截屏小工具

    [kimol君的无聊小发明]-用python写截屏小工具 前言 一.技术实现 1. 相关库 2. 定义窗口 3. 绘制工具条 4. 定义事件函数 二.后续改进 写在最后 前言 今天我看了一下自己的文件 ...

  8. python英语翻译-python制作英语翻译小工具代码实例

    这篇文章主要介绍了python制作英语翻译小工具代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 用python爬虫可以制作英语翻译小工具.来 ...

  9. python制作一个桌面小工具

    python实现一个桌面小工具,制作一个桌面的便签提醒工具 参考代码:https://github.com/cosven/memo 参考链接:https://www.jb51.net/article/ ...

最新文章

  1. linux mysql 类型_常用的MySQL数据类型
  2. C++学习笔记3[条件判断语句]
  3. Mono项目的新进展
  4. 公司服务器文档管理制度,文件服务器管理制度
  5. 如何获取当前文件目录的完整路径?
  6. java jdbc 占位符_java-jdbc
  7. 大热的麦克风阵列语音识别系统的设计和轻松实现,提供软硬件解决方案
  8. xycms留言板 php 1.5,XYCMS留言板PHP版 v1.9
  9. Apache Spark源码剖析
  10. 深入浅出量化对冲Alpha基金的操作
  11. 基于Nginx,搭建HLS(HTTP Live Streaming)server,点播直播
  12. 金山卫士开源软件之旅(九) KUI高级界面(列表控件、树控件例子、超文本、网页控件)
  13. 45岁了社保交了25年不交了行吗?
  14. 京区航天研究所 哪些比较好的研究所?
  15. 计算机语言有许多种其中与硬件直接相关的是,【单选题】计算机语言有许多种,其中与硬件直接相关的是 A. 机器语言 B. 网络语言 C. 高级语言 D. 自然语言...
  16. 希尔顿集团大中华区第450家酒店开业;Gap在山东青岛开新店 | 美通企业日报
  17. 惠州电子计算机职业学校,惠州市十大中专学校排名
  18. 【干货】AI全栈工程师学习+进阶+实战笔记
  19. cobalt strike各种beacon的详解(http/https/tcp)
  20. 混合型数据的邻域条件互信息熵属性约简算法

热门文章

  1. WATCH ME 2007
  2. 2021年学web前端需要什么学历?
  3. Intel傲腾存储黑科技终极版:DIMM内存条明年到来
  4. FCAA答题练习收集记录
  5. 小米手机 开发app python_一篇文章教会你用Python多线程获取小米应用商店App
  6. WeMos TTGO WiFi + 蓝牙电池 ESP32 0.96 英寸 OLED点亮屏幕
  7. ios12微信H5输入框软键盘关闭后,页面无法回到正常位置
  8. 用vue3.0.1如何搭建仿京东的电商H5项目呢?本文实战教你
  9. 海湾主机汉字注释表打字出_电脑打字打不出来_电脑上打字只显示字母打不出汉字是怎么回事?...
  10. 【链块技术10期】区块链基础语言(二)——GO语言开发环境搭建