# a_share_fetcher **Repository Path**: ausmith/a_share_fetcher ## Basic Information - **Project Name**: a_share_fetcher - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-21 - **Last Updated**: 2025-03-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # A 股数据下载器 一个基于 Python 的 A 股历史数据下载和查看工具,使用 akshare 获取数据,NiceGUI 构建 Web 界面。 ## 功能特性 - 支持下载 A 股历史数据 - 可选日线、周线、月线 - 支持前复权、后复权、不复权 - 数据存储 - 使用 SQLite 数据库 - 自动创建数据表 - 记录下载日志 - Web 界面 - 简单易用的操作界面 - 实时显示已下载数据表 - 支持刷新数据列表 ## 使用方法 1. 安装依赖: ```bash pip install -r requirements.txt ``` 2. 运行程序: ```bash python main.py ``` 3. 访问 http://localhost:8080 使用 Web 界面 4. 输入股票代码,选择周期和复权类型,点击"下载数据"按钮 5. 下载完成后可在下方查看数据表信息 ## 测试说明 项目使用 pytest 进行单元测试,测试覆盖核心功能模块: - 数据库模块 (core/database.py) - 数据获取模块 (core/fetcher.py) - Web 界面模块 (ui/web_ui.py) ### 运行测试 ```bash pytest --cov=core --cov=ui --cov-report=term-missing tests/ ``` ### 测试覆盖率 当前测试覆盖率: | 模块 | 覆盖率 | |------|--------| | core/database.py | 88% | | core/fetcher.py | 42% | | ui/web_ui.py | 71% | ## 技术栈 - 数据获取:akshare - Web 框架:NiceGUI - 数据库:SQLite - 数据处理:pandas - 测试框架:pytest ## 贡献指南 欢迎提交 issue 和 pull request。提交代码前请确保: 1. 通过所有测试 2. 新增代码有对应的测试用例 3. 更新相关文档 ## 可能的拓展方向 1. 增强数据展示功能 - 数据可视化图表 - 数据导出功能 - 自定义时间范围选择 2. 优化性能 - 增加缓存机制 - 支持断点续传 - 优化数据库查询性能 3. 部署优化 - 支持 Docker 部署 - 增加定时任务功能