1、工程施工单位中经常要统计工人的身份信息,用于工人信息统计表、工资发放表。在网上查询了相关内容,经调试后可以运行。
2、运行时若在pycharm中出现图片格式错误等原因,一般就是阿里官方身份证OCR文字识别API过期或次数用完了,试用是免费的,只有100次,每张照片计一次,可以用新支付宝首次 1分可以有500次。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import base64
import glob
import json
import threading
import time
import tkinter
from tkinter import *
from tkinter import filedialog
from tkinter import ttk
from tkinter.filedialog import askdirectory
from tkinter.messagebox import showinfo
import pandas as pd
import requests
from urllib3.filepost import writer
import openpyxl
ENCODING = 'utf-8'
# 选择文件夹返回文件夹的路径
def selectPath():
init()
path_ = askdirectory() # 使用askdirectory()方法返回文件夹的路径
if path_ == "":
path.set(path_)
path.get() # 当打开文件路径选择框后点击"取消" 输入框会清空路径,所以使用get()方法再获取一次路径
showinfo('提示', '未选择文件夹')
else:
path_ = path_.replace("/", "\\") # 实际在代码中执行的路径为“\“ 所以替换一下
path.set(path_)
showinfo('提示', '已选择' + str(path.get()) + '文件夹!')
print("路径:" + str(glob.glob(path.get() + "\\*")))
# 识别按钮实现线程同时开始
def shibie():
if path.get() != '':
thread_it(create)
thread_it(tijiao)
else:
showinfo('提示', '请选择文件夹!')
# 调用阿里云接口
def tijiao():
init()
global statzzx
statzzx = 0
id = 0
for file_abs in glob.glob(path.get() + "\\*"):
file_ab = file_abs.replace("\\", "/")
# 如果没有configure字段,configure设为None
# configure = None
img_base64data = get_img_base64(file_ab)
try:
name, sex, nationality, birth, address, num = predict(url, appcode, i

本文介绍了一个使用Python编写的脚本,用于在工程施工单位中处理工人信息,通过阿里云OCRAPI识别身份证上的信息,并将结果存储在Excel表格中。脚本包括文件夹选择、批量识别及导出功能,可能遇到的常见问题如图片格式错误和API调用限制也被提及。
最低0.47元/天 解锁文章
881






