#QQ:502440275@qq.com
#本截图适合安康码截图,如需其他地区截图统计,可与我QQ或QQ邮箱联系
#1、在当前文件夹下创建imgs文件夹用于存放图片,图片格式.jpg
#2、在当前文件夹下创建“shuju.xlsx”的Excel用于存放统计结果

文件夹目录样式

统计结果Excel样式



具体代码如下:
# @Time : 2022/4/19 22:00 

# @Author : CFang

# @File : hesuan_results.py 

# @Software: PyCharm
#QQ:502440275@qq.com
#本截图适合安康码截图,如需其他地区截图统计,可与我QQ或QQ邮箱联系
#1、在当前文件夹下创建imgs文件夹用于存放图片,图片格式.jpg
#2、在当前文件夹下创建“shuju.xlsx”的Excel用于存放统计结果 #获得截图结果
def get_hesuan_res(path):
#获得API的access_token
import requests
AK = '*******'#输入自己的百度智能云的AK和SK
SK = '*******'
# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+AK+'&client_secret='+SK
response = requests.get(host)
if response:
print(response.json())
print(response.json()['access_token']) # encoding:utf-8
#文字识别接口,可自己调整不同接口获得不同精度要求
import requests
import base64 '''
通用文字识别
''' request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic"
# 二进制方式打开图片文件
f = open(path, 'rb')
img = base64.b64encode(f.read()) params = {"image":img}
access_token = response.json()['access_token']
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
response = requests.post(request_url, data=params, headers=headers)
if response:
# print (response.json())
# print(response.json()['words_result'])
all_res = response.json()['words_result']
return all_res
# for i in range(len(all_res)):
# print(i,all_res[i]) # 对图片识别结果的数据清洗
all_lists_deals = []
def deal_datas(all_lists):
all_lists_deal = []
if all_lists[5]['words'].split(":")[0] == "姓名":
for i in range(5, len(all_lists)):
print(i, all_lists[i]['words']) # ,all_lists_display[i]['words']
if all_lists[i]['words'] != '>' and all_lists[i]['words'] != '身份证件号码:':
all_lists_deal.append(all_lists[i]['words'])
all_lists_deal[0] = all_lists_deal[0].split(":")[1][:-1]
# print(all_lists_deal)
else:
for i in range(6, len(all_lists)):
print(i, all_lists[i]['words']) # ,all_lists_display[i]['words']
if all_lists[i]['words'] != '>':
all_lists_deal.append(all_lists[i]['words'])
all_lists_deal[0] = all_lists_deal[0].split(":")[1]
all_lists_deal[1] = all_lists_deal[1].split(":")[1]
# print(all_lists_deal) print(all_lists_deal)
all_lists_deals.append(all_lists_deal) #获取文件夹imgs内的所有图片
import os
def get_imlist(path):
return [os.path.join(path,f) for f in os.listdir(path) if f.endswith('.jpg')] img_path = get_imlist("imgs")
print(img_path) for path in img_path:
all_lists = get_hesuan_res(path)
deal_datas(all_lists) #保存识别清洗后的数据结果到“shuju.xlsx”表中
# -*- coding: UTF-8 -*-
from openpyxl import load_workbook wb = load_workbook('shuju.xlsx')
ws = wb['Sheet1'] row = ws.max_row+1
for j in range(len(all_lists_deals)):
for i in range(len(all_lists_deals[j])):
if len(all_lists_deals[j][i].split(":")) == 1:
ws.cell(row+j,i+1).value = all_lists_deals[j][i]
elif all_lists_deals[j][i].split(":")[0] == "检测机构" or all_lists_deals[j][i].split(":")[0] == "身份证件号码":
ws.cell(row+j, i + 1).value = all_lists_deals[j][i].split(":")[1]
else:
ws.cell(row+j, i + 1).value = all_lists_deals[j][i].split(":")[1][:10]
wb.save('shuju.xlsx')


python代码统计核酸检测结果截图的更多相关文章

  1. 30行Python代码实现人脸检测

    参考OpenCV自带的例子,30行Python代码实现人脸检测,不得不说,Python这个语言的优势太明显了,几乎把所有复杂的细节都屏蔽了,虽然效率较差,不过在调用OpenCV的模块时,因为模块都是C ...

  2. Python代码统计工具

    目录 Python代码统计工具 声明 一. 问题提出 二. 代码实现 三. 效果验证 Python代码统计工具 标签: Python 代码统计 声明 本文将对<Python实现C代码统计工具(一 ...

  3. python代码统计

    代码统计 修改filename为文件夹or文件地址,然后统计所有python文件代码 import os import sys def count_code_lines(filename): res ...

  4. 10行Python代码实现目标检测

    要知道图像中的目标是什么? 或者你想数一幅图里有多少个苹果? 在本文中,我将向你展示如何使用Python在不到10行代码中创建自己的目标检测程序. 如果尚未安装python库,你需要安装以下pytho ...

  5. 25行 Python 代码实现人脸检测——OpenCV 技术教程

    这是篇是利用 OpenCV 进行人脸识别的技术讲解.阅读本文之前,这是注意事项: 建议先读一遍本文再跑代码——你需要理解这些代码是干什么的.成功跑一遍不是目的,能够举一反三.在新任务上找出 bug 才 ...

  6. Python实现代码统计工具——终极加速篇

    Python实现代码统计工具--终极加速篇 声明 本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统计工具做对 ...

  7. Python实现C代码统计工具(二)

    目录 Python实现C代码统计工具(二) 声明 一. 问题提出 二. 代码实现 三. 效果验证 Python实现C代码统计工具(二) 标签: Python 代码统计 声明 本文将对<Pytho ...

  8. Python实现C代码统计工具(一)

    目录 Python实现C代码统计工具(一) 声明 一. 问题提出 二. 代码实现 三. 效果验证 四. 后记 Python实现C代码统计工具(一) 标签: Python 代码统计 声明 本文将基于Py ...

  9. 看完复旦博士用Python统计核酸结果后,我照着也写了一个

    前几天,人民日报公众号报道了复旦博士生自己写代码,通过OCR和正则表达式统计核酸截图结果.具体文章见:https://mp.weixin.qq.com/s/l8u9JifKDlRDoz32-jZWQg ...

随机推荐

  1. session 会话机制以及变量覆盖

    session会话机制介绍如下 http是无状态协议.服务器靠cookie和session来记住用户.$_SESSION 和 $_GET等一样,是超全局变量. 后台脚本里面会写: session() ...

  2. 基于long pull实现简易的消息系统参考

    我们都用过消息中间件,它的作用自不必多说.但对于消费者却一直有一些权衡,就是使用push,还是pull模式的问题,这当然是各有优劣.当然,这并不是本文想讨论的问题.我们想在不使用长连接的情意下,如何实 ...

  3. 西门子STEP7安装过程不断提示电脑重启的解决方法

    win+R打开注册表 进入 计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 删除PendingFileR ...

  4. 漫长的旅途--C++primer学习-命名空间以及类的自动转换和强制转换

    C++用名称空间来控制名称的作用域: 1不同命名空间的同名变量可以同时存在,不会发生冲突 2命名空间不能出现在代码块中 3我们用作用域运算符::,使用空间名来限定名称,最常用的std::cout 4u ...

  5. Oracle Yum源

    仓库地址(非Yum源仓库):https://public-yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/index.html 如何连接到 Orac ...

  6. Dubbo 配置文件是如何加载到 Spring 中的?

    Spring 容器在启动的时候,会读取到 Spring 默认的一些 schema 以及 Dubbo 自 定义的 schema,每个 schema 都会对应一个自己的 NamespaceHandler, ...

  7. redis主从复制与哨兵高可用

    redis主从复制 话不多说,直接看案例: 环境准备, 主从规划 主节点:6380 从节点:6381.6382 运行3个redis数据库,达到 1主 2从的配置 #主库 6379.conf port ...

  8. 学习heartbeat-04 原理及部署

    1. Heartbeat介绍 1.1 Heartbeat作用 通过它可以将资源(IP及程序服务等资源)从一台故障计算机快速转移到另一台运转正常的机器继续提供服务,在实际生产应用场景中,heartbea ...

  9. 语言算子&模糊推理

    一.语言算子 语言算子分为三类: ①语气算子 ②模糊化算子 ③判定化算子 (1)语气算子 "集中化算子":--"很"."极"."非 ...

  10. DSP选型

    DSP芯片也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器具,其主机应用是实时快速地实现各种数字信号处理算法.根据数字信号处理的要求,DSP芯片一般具有如下主要特点: (1)在一个指 ...