# ScreenCaptureAPI **Repository Path**: jijie0418/screen-capture-api ## Basic Information - **Project Name**: ScreenCaptureAPI - **Description**: 屏幕捕获API平台是一个用于监测和分析屏幕内容的FastAPI后端服务系统。它能够接收客户端上传的屏幕截图,进行OCR文字识别和AI智能分析,检测屏幕内容是否包含不良词汇,并提供完整的管理功能。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2025-04-06 - **Last Updated**: 2025-05-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 屏幕捕获智能分析系统 ## 项目概述 基于FastAPI构建的在线考试监控系统,实时捕获考生屏幕并运用大语言模型进行异常行为分析。集成OCR识别、AI内容检测和实时告警功能。 ## 功能特性 - 📷 定时屏幕截图捕获 - 🔍 多模态AI分析(窗口状态/可疑软件/文本异常) - 📊 数据可视化统计面板 - 🚨 实时异常行为告警 - 📦 分布式任务队列处理 ## 技术栈 ![Python](https://img.shields.io/badge/Python-3.10%2B-blue) ``` FastAPI - 高性能API框架 MySQL - 数据持久化存储 Redis - 缓存和消息队列 Celery - 分布式任务调度 Qwen-VL - 多模态大语言模型 EasyOCR - 文字识别 OpenCV - 图像处理 ``` ## 环境配置 ### 前置要求 - Python 3.10+ - MySQL 8.0+ - Redis 6.2+ ### 安装指南 ```bash # 克隆仓库 git clone https://github.com/your-repo/screen_capture.git cd screen_capture # 安装依赖 pip install -r requirements.txt # 环境变量配置(复制示例文件) cp .env.example .env ``` ## 配置文件示例 ```python # .env DB_HOST=localhost DB_PORT=3306 DB_USER=root DB_PASSWORD=your_password AI_API_KEY=your_aliyun_api_key REDIS_HOST=localhost ``` ## 数据库设计 ### 核心表结构 ```sql CREATE TABLE screen_captures ( id INT AUTO_INCREMENT PRIMARY KEY, student_id VARCHAR(50) NOT NULL, capture_time DATETIME NOT NULL, image_path VARCHAR(255) NOT NULL, ai_status TINYINT DEFAULT 0 ); ``` ## 系统架构 ``` main.py - 应用入口 ├── api/ - API路由模块 ├── services/ - 后台服务 │ ├── ai_service.py - AI分析服务 │ └── ocr_service.py - OCR处理服务 └── utils/ - 工具类 ├── db_utils.py - 数据库连接 └── redis_utils.py - Redis操作 ``` ## Celery任务流程 ```mermaid flowchart LR A[截图任务] --> B[Celery队列] B --> C{任务分配} C --> D[AI分析Worker] C --> E[OCR处理Worker] ``` ## 部署指南 ```bash # 启动开发服务器 uvicorn main:app --reload # 启动Celery worker celery -A tasks worker --loglevel=info ``` ## 贡献指南 1. Fork项目仓库 2. 创建特性分支(feat/xxx 或 fix/xxx) 3. 提交Pull Request ## 许可证 [MIT License](LICENSE)