小学生低年级生字试卷生成器(python)

一体化解决低年级小学生家长帮助孩子生成生字试卷的问题。家长通过手机拍摄生字表,并上传到自己建的本地web服务器,通过ocr识别分析,并自动生成带拼音的word生字测试试卷。

以下是该生字测试系统的详细功能说明:

整个流程:   [用户界面] -->[文件上传] -->[OCR文字识别] -->[拼音转换] --> [Word生成] --> [试卷下载]。

Web服务模块:使用Flask框架搭建,提供网页上传界面并处理文件上传(/upload),支持最大16MB文件上传,自动清理临时文件。

OCR识别模块:基于EasyOCR实现自动过滤非中文字符和异常检测机制(空识别结果处理)。

拼音转换模块:使用pypinyin库,带声调输出(如:zhōng)。

Word生成模块:自动创建4列排版表格。标题:22pt宋体居中,汉字:24pt黑色,拼音:14pt灰色。

自建网站布局代码(网页文件存在程序目录下templates文件夹):

upload.html

<!DOCTYPE html>
<html>
<head>
    <title>生字测试卷生成器</title>
</head>
<body>
    <h2>上传生字表照片</h2>
    <form method="post" enctype="multipart/form-data" action="/upload">
        <input type="file" name="file" accept="image/*">
        <input type="submit" value="生成试卷">
    </form>
</body>
</html> 

兼容报错页面代码:

error.html

<!DOCTYPE html>
<html>
<head>
    <title>错误提示</title>
</head>
<body>
    <h3 style="color: red;">错误:{
  { message }}</h3>
    <a href="/">返回上传页面</a>
</body>
</html> 

初始化配置:

 UPLOAD_FOLDER —'./uploads'  上传文件存储目录 ; MAX_CONTENT_LENGTH —— 16 1024 1024 (16MB)  单个文件最大上传尺寸 , ALLOWED_EXTENSIONS —— {'png', 'jpg', 'jpeg'}  允许上传的图片格式 。

app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = './uploads'
app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024  # 16MB
ALLOWED_EXTENSIONS = {'png', 'jpg', 'jpeg'}

初始化OCR阅读器(第一次运行会自动下载模型):

reader = easyocr.Reader(['ch_sim'])

首先,启动Flask应用。具体来看:1. 目录创建:os.makedirs(app.config['UPLOAD_FOLDER'], exist_ok=True):确保上传目录存在。exist_ok=True参数表示如果目录已存在,不会抛出异常。
os.makedirs('output', exist_ok=True):创建输出目录,用于存储生成的Word文档。同样使用exist_ok避免重复创建的问题。2启动Web服务:app.run(host='0.0.0.0', port=5000, threaded=True):这里配置了Flask开发服务器的启动参数:host='0.0.0.0':允许外部访问,而不仅仅是本地。port=5000:指定服务运行的端口。threaded=True:启用多线程处理请求,提高并发能力。

if __name__ == '__main__':
    # 创建必要目录
    os.makedirs(app.config['UPLOAD_FOLDER'], exist_ok=True)
    os.makedirs('output', exist_ok=True)
    
    # 启动Web服务
    app.run(host='0.0.0.0', port=5000, threaded=True) 

函数ind

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

席子哥哥的代码库

你的鼓励是我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值