# fastocr **Repository Path**: zc035/fastocr ## Basic Information - **Project Name**: fastocr - **Description**: ocr识别身份证,营业执照等信息 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-11-21 - **Last Updated**: 2025-11-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 税务PDF数据提取系统 ## 项目概述 本项目是一个基于Python的税务PDF数据提取系统,主要用于从税务系统导出的PDF文件中提取表格数据。系统使用pdfplumber库进行PDF解析,通过FastAPI提供API接口,支持文件上传、数据提取和JSON格式数据返回。 ## 主要功能 - PDF文件上传和处理 - 表格数据提取和识别 - 基于规则的表格匹配 - 数据结构化和JSON格式输出 - API接口提供服务 ## 技术栈 - Python 3.8+ - FastAPI (Web框架) - pdfplumber (PDF解析) - Pydantic (数据验证) - pytest (测试框架) ## 安装和使用 ### 环境要求 - Python 3.8 或更高版本 ### 安装依赖 ```bash pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ### 启动服务 ```bash python -m app.main ``` 或使用uvicorn直接启动: ```bash uvicorn app.main:app --reload ``` ### API文档 启动服务后,访问以下URL查看API文档: - Swagger UI: http://localhost:8080/docs - ReDoc: http://localhost:8080/redoc ## 项目结构 ``` . ├── app/ # 应用主目录 │ ├── api/ # API接口 │ ├── core/ # 核心功能 │ ├── models/ # 数据模型 │ ├── services/ # 业务服务 │ ├── utils/ # 工具函数 │ └── main.py # 应用入口 ├── config/ # 配置文件 ├── tests/ # 测试目录 ├── sample_pdfs/ # 示例PDF文件 ├── .env # 环境变量 ├── requirements.txt # 项目依赖 └── README.md # 项目说明 ``` ## 使用示例 ### 上传PDF文件并提取数据 ```python import requests url = "http://localhost:8080/api/pdf/extract" files = {"file": open("example.pdf", "rb")} response = requests.post(url, files=files) data = response.json() print(data) ``` ## 配置说明 系统配置可以通过`.env`文件或环境变量进行设置,主要配置项包括: - `DEBUG`: 调试模式开关 (true/false) - `API_PREFIX`: API路径前缀 - `MAX_UPLOAD_SIZE`: 最大上传文件大小 (MB) ## 许可证 [MIT License](LICENSE)