diff --git a/ocr.py b/ocr.py index d45fe64dd48c178167147274707bdccf69e6b6e0..8725d7ba955b4a250bff8a2bca7630757431fe80 100644 --- a/ocr.py +++ b/ocr.py @@ -62,4 +62,26 @@ def ocr_inference(): results.append({"text": text, "confidence": confidence}) if not results: - return jsonify({"error": "No valid OCR debug output found"}), 500 \ No newline at end of file + return jsonify({"error": "No valid OCR debug output found"}), 500 + + # 保存为 JSON 文件 + json_filename = f"{uuid_str}.json" + json_path = os.path.join(output_dir, json_filename) + with open(json_path, "w", encoding="utf-8") as f: + json.dump(results, f, ensure_ascii=False, indent=2) + + # 读取 JSON 文件内容并返回 + with open(json_path, "r", encoding="utf-8") as f: + json_content = json.load(f) + + # 返回结果 + return jsonify({ + "message": "File processed successfully", + "uuid": uuid_str, + "content": json_content, + }), 200 + + except subprocess.CalledProcessError as e: + return jsonify({"error": f"OCR subprocess failed: {e}"}), 500 + except Exception as e: + return jsonify({"error": f"Unexpected error: {e}"}), 500 \ No newline at end of file