【4-11更新重制GUI版】OCR识别健康码截图,保存到Excel(也可以用于健康码以外的同类工作)

释放双眼,带上耳机,听听看~!

健康码批量识别GUI版(4月11日超级更新)

一、软件介绍

​        此前作者吾爱@d8349565 制作了一个简单的Python代码,便于高效的收集健康码截屏中的文本信息,但是仍有很多不足,所以花了几天时间进行整理,重新制作了一版带有GUI界面的软件。(也可以用于健康码以外的同类工作)

主要功能

  1. 调用百度【通用文字识别(标准版)】对图片进行ocr识别,将结果返回到【结果输出框】;
  2. 自定义正则表达式,从结果中获取需要的文本内容;(可设置在正则表达式返回的结果中选取第几个文本)
  3. 完成以上调试后,可将方案保存到本地的 '***.ff' 文件;
  4. 右键点击进度条,可对文件夹内的图片批量执行ocr、正则表达式获取,保存到Excel中;(最后一列为图片文件的超链接)
  5. 其他功能详见下图,<u>红色文本为介绍,蓝色为操作指导</u>。

界面介绍

LVvaon

二、操作指导GIF

设置默认文件夹

LVvRoR

识别图片、正则获取

LVvISK

保存方案

LVvbeH

批量执行

LVvjYt

 

 

以下是旧版本是,使用Python写的,可略过知悉即可


软件介绍
最近听到小伙伴在讨论目前防疫政策下,天天都要收集健康码截图,然后要一个个识别,手工记录,非常繁琐且耗时,然后我就制作了一个针对此业务场景的软件。

作者 吾爱@d8349565

原理介绍
1、申请百度OCR识别token,调用SDK对每张图片逐一识别,返回message;(软件中已使用我自己的token)
2、将百度OCR返回的列表转换为一个字符串,使用re正则表达式逐一获取姓名、截屏时间、末次核酸检测时间(人事部同事说只需要这几个信息);
3、使用dict和pandas将数据转存到Excel文件中。

演示GIF
L9oK0A

旧版本下载地址:(GUI重构版请在附件下载)

百度网盘:https://pan.baidu.com/s/1uwF9PFqd9uie6VzOPj0gug 提取码:t0u6
天翼网盘:https://cloud.189.cn/t/J3E3ui6vyUzi|tq=u6yx

旧版本Python 源码

import os
from aip import AipOcr
import re
from pandas import DataFrame
from easygui import diropenbox
from tqdm import tqdm
print('程序开始运行,进度如下:')
""" 你的 APPID AK SK """
APP_ID = '23539899'  # 申请应用获取的 ID,下同
API_KEY = '自行获取'
SECRET_KEY = '自行获取'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
 
""" 读取图片 """
def get_file_content(filePath):
    with open(filePath, 'rb') as fp:
        return fp.read()
path=diropenbox('请选择需要处理的文件夹')
filelist = os.listdir(path)  # 设定图片目录
result = []
for file in tqdm(filelist):
    a = {}
    file_path=f'{path}\\{os.path.basename(file)}'
    img = get_file_content('{}\\'.format(path) + file)
    message = client.basicGeneral(img)['words_result']
    x = [str(list(i.values())[0]) for i in message]
    x_str = ','.join(x).replace('(请尽快接种新冠疫苗)','')
    # 获取最新的检测时间
    核酸检测时间 = re.compile(r',((.){12})检测,').findall(x_str)
    num = len(核酸检测时间) - 1
    核酸检测时间 = 核酸检测时间[num][0]
    # 获取截屏时间
    time = re.compile(r',(2022-(.){5})').findall(x_str)
    num = len(time) - 1
    time = time[num][0]
    # 获取姓名
    name = re.compile(r',([\u4e00-\u9fa5]{2,4}),')
    name = name.findall(x_str)
    try:
        name.remove('场所码')
    except:
        pass
    a['截屏时间'] = time
    a['末次核酸检测时间'] = 核酸检测时间
    a['姓名'] = name[0]
    a['文件名'] = file
    a['文件夹名称'] = os.path.abspath(file)
    # print(' 截屏时间为:', time, ' 末次核酸检测时间为:', 核酸检测时间, '姓名为:', name[0],file)
    result.append(a)
print(result)
 
result=DataFrame(result).to_excel('result.xlsx')
os.startfile('result.xlsx')
input('程序运行完成')

 

下载权限
查看
  • 免费下载
    评论并刷新后下载
    登录后下载
  • {{attr.name}}:
您当前的等级为
登录后免费下载登录 小黑屋反思中,不准下载! 评论后刷新页面下载评论 支付以后下载 请先登录 您今天的下载次数(次)用完了,请明天再来 支付积分以后下载立即支付 支付以后下载立即支付 您当前的用户组不允许下载升级会员
您已获得下载权限 您可以每天下载资源次,今日剩余
温馨提示:本文最后更新于 2022-12-11 02:07 ,某些文章具有时效性,若有错误或已失效,请在下方留言或联系逆念

给TA打赏
共{{data.count}}人
人已打赏
精品软游

Topaz Sharpen AI 4.1.0 (AI 图像锐化工具)简本中文汉化版

2022-4-10 23:17:34

精品软游

[Photoshop插件] AI智能修图 Retouch4me 1.0 八合一

2022-4-10 23:50:48

重要声明

本站资源大多来自网络,如有侵犯你的权益请联系管理员,QQ508044570 我们会第一时间进行审核删除。站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请在下载24小时内删除!


如果遇到付费才可观看的文章,建议升级终身VIP。全站所有资源任意下免费看”。本站资源少部分采用7z压缩,为防止有人压缩软件不支持7z格式,7z解压,建议下载7-zip,zip、rar解压,建议下载WinRAR

13 条回复 A文章作者 M管理员
  1. 柠檬℃

    感谢老铁

  2. momeis

    建议出个百度OCR接口教程?

  3. 是不是自己购买token 添加进去 就会默认扣除自己购买的识别次数?

  4. 你好这个有限制识别次数吗

    • 百度OCR接口有免费的调用次数,如需更多次数使用可以选择按量付费或者使用次数包,可以前往官网了解一下

  5. 高手

  6. 红旗

    想要试试

  7. 看看能否正常使用。

  8. 很实用啊,这个对上海那疫情严重的地方很有用,减轻基层工作量!

  9. KamusWoo

    试用一下

  10. 在集美

    感谢提供。

  11. 行稳致远

    很实用啊,这个对上海那疫情严重的地方很有用,减轻基层工作量!

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索