前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AI调用微信OCR能力来批量识别图片中的文本

AI调用微信OCR能力来批量识别图片中的文本

作者头像
AIGC部落
发布2024-10-21 10:46:27
730
发布2024-10-21 10:46:27
举报
文章被收录于专栏:Dance with GenAI

微信电脑版中自带OCR能力,可以识别截图图片中的文字、身份证、银行卡、行驶证、营业执照等,准确率很高,而且免费。

不过,如果图片很多,要批量识别,就有些麻烦。借助AI,可以调用微信OCR能力来批量识别图片中的文本。

首先打开微信电脑版,设置好快捷键:

然后在deepseek中输入提示词:

你是一个Python编程专家,要编写一个脚本,具体任务的步骤如下:

打开文件夹:F:\AAA;

按照主文件名来模仿鼠标点击,逐个打开里面的png和jpg图片文件;

键盘上按下ctrl+Q,调用微信电脑版的截取屏幕功能;

鼠标移动到坐标:(583,408);

鼠标点击一下,等待2秒;

【用pyautogui库检查当前页面是否和图片"F:\txtbutton.jpg"一致的按钮,pyautogui.locateOnScreen函数的参数confidence为0.8,如果有,就模拟鼠标左键点击;

等待5秒;

键盘上按下ctrl+A,等待2秒;

键盘上按下ctrl+C,等待2秒;

获取剪贴板中的文本;

将文本写入"F:\AAA\picorc.docx"这个word文档中;

注意:每一步都要输出信息到屏幕上

加入异常处理和错误监控;

Deepseek的回复:

为了完成这个任务,我们可以使用pyautogui库来模拟鼠标和键盘操作,使用PIL库来处理图片,使用pyperclip库来处理剪贴板,以及使用python-docx库来处理Word文档。以下是完整的Python脚本:

import os

import time

import pyautogui

import pyperclip

from docx import Document

# 设置文件夹路径

folder_path = r"F:\AAA"

# 打开Word文档

doc = Document()

# 遍历文件夹中的所有图片文件

for filename in os.listdir(folder_path):

if filename.lower().endswith(('.png', '.jpg')):

try:

# 输出当前处理的文件名

print(f"正在处理文件: {filename}")

# 打开图片文件

image_path = os.path.join(folder_path, filename)

os.startfile(image_path)

time.sleep(2) # 等待图片打开

# 模拟键盘按下ctrl+Q

pyautogui.hotkey('ctrl', 'q')

time.sleep(2) # 等待截图功能启动

# 鼠标移动到坐标(583,408)

pyautogui.moveTo(583, 408)

time.sleep(1) # 等待鼠标移动

# 鼠标点击一下

pyautogui.click()

time.sleep(2) # 等待2秒

# 检查当前页面是否和图片"F:\txtbutton.jpg"一致的按钮

button_image_path = r"F:\txtbutton.jpg"

button_location = pyautogui.locateOnScreen(button_image_path, confidence=0.8)

if button_location:

# 模拟鼠标左键点击按钮

pyautogui.click(button_location)

print("按钮已点击")

time.sleep(5) # 等待5秒

# 模拟键盘按下ctrl+A

pyautogui.hotkey('ctrl', 'a')

time.sleep(2) # 等待2秒

# 模拟键盘按下ctrl+C

pyautogui.hotkey('ctrl', 'c')

time.sleep(2) # 等待2秒

# 获取剪贴板中的文本

clipboard_text = pyperclip.paste()

print(f"获取到的文本: {clipboard_text}")

# 将文本写入Word文档

doc.add_paragraph(clipboard_text)

print("文本已写入Word文档")

else:

print("未找到匹配的按钮")

# 关闭当前图片窗口

pyautogui.hotkey('alt', 'f4')

time.sleep(1) # 等待窗口关闭

except Exception as e:

print(f"处理文件 {filename} 时发生错误: {e}")

# 保存Word文档

output_doc_path = os.path.join(folder_path, "picorc.docx")

doc.save(output_doc_path)

print(f"Word文档已保存到: {output_doc_path}")

代码说明:

文件夹遍历:使用os.listdir遍历指定文件夹中的所有文件,并过滤出.png和.jpg文件。

图片打开:使用os.startfile打开图片文件。

键盘和鼠标模拟:使用pyautogui库模拟键盘和鼠标操作。

图片匹配:使用pyautogui.locateOnScreen函数检查当前屏幕上是否存在与指定图片匹配的按钮。

剪贴板操作:使用pyperclip库获取剪贴板中的文本。

Word文档操作:使用python-docx库将文本写入Word文档。

异常处理:在每个文件处理过程中加入异常处理,确保脚本在遇到错误时不会崩溃。

注意事项:

确保pyautogui、pyperclip和python-docx库已安装。可以使用pip install pyautogui pyperclip python-docx进行安装。

脚本中的confidence参数设置为0.8,表示图片匹配的置信度为80%。可以根据实际情况调整。

脚本中的等待时间可以根据实际操作速度进行调整。

运行环境:

该脚本需要在Windows系统上运行,因为os.startfile是Windows特有的函数。

确保微信电脑版已打开并登录,以便能够使用截图功能。

运行该脚本后,它会自动处理指定文件夹中的所有图片文件,并将获取到的文本写入指定的Word文档中。

程序运行,完成图片识别任务。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Dance with GenAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档