Skip to content

citrusjunoss/StockTradebyZ

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

309 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub Actions 自动化流程

本项目使用GitHub Actions来自动化市值数据的获取和缓存更新,避免频繁请求导致IP被封禁。

工作流程说明

1. update-market-data.yml - 自动数据更新

触发条件:

  • 每周一早上6点(UTC时间)自动执行,即北京时间周一下午14:00
  • 每天早上2点(UTC时间)检查缓存是否需要更新,即北京时间上午10:00
  • 支持手动触发

执行流程:

  1. 检查缓存有效性
  2. 如果缓存过期或手动触发,则更新市值数据
  3. 如果有数据变更,自动提交到仓库
  4. 显示更新结果摘要

2. manual-update.yml - 手动数据更新

触发条件:

  • 完全手动触发

可配置参数:

  • force_update: 强制更新缓存,忽略缓存有效期
  • datasource: 选择数据源(baostock/akshare/tushare)

执行流程:

  1. 显示当前缓存状态
  2. 根据参数设置数据源和更新策略
  3. 执行数据更新
  4. 显示更新后状态
  5. 提交变更(如有)

使用方法

自动更新

无需手动操作,GitHub Actions会按计划自动运行。

手动更新

  1. 进入GitHub仓库
  2. 点击 Actions 标签
  3. 选择 "Manual Market Data Update"
  4. 点击 "Run workflow"
  5. 配置更新参数
  6. 点击 "Run workflow" 执行

优势

  1. 避免IP封禁: 通过GitHub Actions的服务器执行请求,避免本地IP被封
  2. 定期更新: 每周自动更新一次,保证数据新鲜度
  3. 灵活性: 支持手动触发和参数配置
  4. 版本控制: 数据变更自动提交,便于追踪历史
  5. 无需本地运行: 不需要本地服务器24小时运行

缓存策略

  • 缓存有效期: 7天
  • 存储位置: cache/ 目录
  • 元数据文件: 记录更新时间、数据源、记录数等信息
  • 兼容性: 支持本地和GitHub Actions环境

注意事项

  1. GitHub Actions有使用限制,免费账户每月2000分钟
  2. 网络请求可能偶尔失败,设计了多数据源fallback机制
  3. 缓存文件会自动提交到仓库,注意仓库大小
  4. 可以通过修改YAML文件调整执行频率

Releases

Packages

Contributors

Languages