https://github.com/secary/janus
Secary's Exchange Rate Data collector
https://github.com/secary/janus
Last synced: about 2 months ago
JSON representation
Secary's Exchange Rate Data collector
- Host: GitHub
- URL: https://github.com/secary/janus
- Owner: secary
- Created: 2024-10-14T10:30:52.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2026-04-23T10:36:08.000Z (3 months ago)
- Last Synced: 2026-04-23T12:23:39.454Z (3 months ago)
- Language: Python
- Size: 1.1 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 💱 Janus
🌐 Hi!私の名前はJanus!
本项目是一个端到端的汇率数据平台,涵盖了汇率抓取、存储、预测与可视化展示,支持容器化部署与定时任务执行。
---
## 📁 项目结构
```
.
├── .env.example # 环境变量模板
├── README.md # 项目说明文件
├── requirements.txt # Python 依赖包
├─config # 配置文件
├─docker # Docker 部署配置
├─main # 汇率抓取主程序
│ └── Janus.py # 主入口
├─notebook # 分析展示
├─predictor # 预测模块
│ └── Jervis.py # 主预测入口
├─utils # 辅助工具
└─web # Web 前端接口
└── Javelin.py # Flask 启动脚本
```
---
## ⚙️ 功能概述
| 模块 | 功能 |
|------|------|
| `Janus` | 抓取中国银行网页汇率数据并写入数据库与 CSV |
| `Jervis` | 使用 LSTM 模型预测汇率 |
| `Javelin` | 提供基于 Flask 的可视化网页与 REST 接口 |
| `run_*.sh` | 提供 cron 等任务调用支持 |
| `Docker` | 快速部署,模块化构建 |
---
## 🚀 快速开始
### 1. 安装依赖
```bash
pip install -r requirements.txt
```
### 2. 配置 `.env`
```env
DB_USER=root
DB_PASSWORD=yourpassword
DB_HOST=127.0.0.1
DB_NAME=exchange
```
### 3. 初始化数据库
```bash
python utils/createdb.py
```
### 4. 运行各个模块
```bash
python main/Janus.py # 抓取汇率
python predictor/Jervis.py # 预测汇率
python web/Javelin.py # 启动 Flask 前端
```
---
## 🐳 Docker 部署(可选)
```bash
cd Docker
docker-compose up --build
```
---
## 📈 Web 页面预览
- `index.html`:显示预测图与最新汇率
- `history.html`:表格形式展示历史汇率与阈值变化
访问路径通常为:
```
http://localhost:5000/
```
---
## 🕒 定时任务支持
通过 crontab 配置自动抓取/预测:
```
0 2 * * * /path/to/run_janus.sh
0 2 * * * /path/to/run_jervis.sh
```
---