# operational_data_statistics **Repository Path**: fangbo2001/operational_data_statistics ## Basic Information - **Project Name**: operational_data_statistics - **Description**: 网联和车队平台运营数据统计,Superset看板使用 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-02 - **Last Updated**: 2026-03-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # operational_data_statistics 运营数据采集入库脚本集合,覆盖车联网平台(CLW)与车队平台(FMS)首页、能耗统计、运营分析等任务,可用于供数仓/Superset 看板。 ## 运行环境 - Python ≥ 3.8(推荐 3.10) - 依赖:requests、mysql-connector-python - 建议每个环境使用独立虚拟环境(venv) ## 目录结构(节选) ``` operational_data_statistics/ ├─ clw_prod/ │ ├─ home/home.py │ ├─ energy_statistic/{electric_vehicle.py, hydrogen_vehicle.py} │ └─ operate_analyze/{electric_vehicle.py, hydrogen_vehicle.py} ├─ fms_prod/ │ ├─ home/home.py │ ├─ energy_statistic/{electric_vehicle.py, hydrogen_vehicle.py} │ └─ operate_analyze/{electric_vehicle.py, hydrogen_vehicle.py} ├─ daily_home.sh # 每日跑两个首页 ├─ biweekly_others.sh # 双周跑其余脚本(偶数周执行) └─ setup_env.sh # 初始化环境与依赖 ``` ## 快速开始(本地/服务器) 1. 进入项目目录并创建虚拟环境 ``` cd /www/wwwroot/operational_data_statistics python3 -m venv .venv source .venv/bin/activate python -m pip install -U pip pip install requests mysql-connector-python ``` 2. 手动运行首页脚本验证 ``` python clw_prod/home/home.py python fms_prod/home/home.py ``` 3. 查看日志 脚本会在项目根目录与 logs/ 目录写入日志文件(stdout 重定向在 logs/ 中)。 ## 宝塔部署与定时 建议把项目放在 `/www/wwwroot/operational_data_statistics`,时区设为 Asia/Shanghai。 1)初始化(可选一键) ``` cd /www/wwwroot/operational_data_statistics bash setup_env.sh ``` 2)计划任务(Shell 脚本) - 每日首页(每天 01:00) 脚本内容(整行): ``` VENV_DIR=/www/wwwroot/operational_data_statistics/.venv /bin/bash /www/wwwroot/operational_data_statistics/daily_home.sh ``` - 双周其余(每周一 01:10,偶数周执行;脚本内置判断) 脚本内容(整行): ``` VENV_DIR=/www/wwwroot/operational_data_statistics/.venv /bin/bash /www/wwwroot/operational_data_statistics/biweekly_others.sh ``` - 若希望固定“每 14 天执行一次”(不看双周): ``` FORCE_RUN=1 VENV_DIR=/www/wwwroot/operational_data_statistics/.venv /bin/bash /www/wwwroot/operational_data_statistics/biweekly_others.sh ``` 3)日志位置 - 标准输出/错误:`/www/wwwroot/operational_data_statistics/logs/*.log` - 各 Python 脚本中文日志:项目根目录(如“首页.log”“能耗统计.log”) ## 时间范围说明 所有脚本使用统一日期范围: - end_date = 脚本运行当天 - start_date = end_date − 14 天 - start_time = start_date 00:00:00 - end_time = end_date 23:59:59 示例:3 月 9 日 00:00 执行 → 范围为 2 月 23 日 00:00:00 至 3 月 9 日 23:59:59。 注:首页脚本当前仅记录日期标记,其余统计脚本使用相同范围聚合。 ## MySQL 权限要求 需要在目标库为“服务器公网 IP”开放账号与权限(最小权限示例): ```sql CREATE USER IF NOT EXISTS 'clw-statistic'@'<你的公网IP>' IDENTIFIED BY '***实际密码***'; GRANT SELECT, INSERT, CREATE ON clw_statistics_data.* TO 'clw-statistic'@'<你的公网IP>'; FLUSH PRIVILEGES; ``` 若为 MySQL 8 且出现认证问题,可按需调整认证插件;确保安全组/防火墙允许来自服务器 IP 的 3306 入站。 ## 常见问题 - Python 3.6 报语法错误(future annotations):使用 Python ≥ 3.8 并重建 `.venv` - 脚本误用其它项目 venv:在计划任务前置 `VENV_DIR=/www/wwwroot/operational_data_statistics/.venv` - Access denied:为服务器公网 IP 授权并校对密码 - 日志没生成:通过 `daily_home.sh/biweekly_others.sh` 执行(脚本会自动 `cd` 到项目根),或确认目录权限 ## 备注 请勿在代码或配置中提交任何真实账号口令与密钥。生产环境建议通过环境变量或凭据管理系统注入敏感信息。*** End Patch***}េៀঢ় to=functions.apply_patch ఉంట Убри to=functions.apply_patch ***!