基于机器学习的农产品价格分析及预测平台

整合北京新发地约 41 万条真实农产品价格的 Flask 分析平台,支持多维价格对比、LR/RF/GB 预测与涨跌幅异常预警,含官方 API 爬虫,适合农业大数据类毕业设计。

评分:4.8/5.0
销量:21
发布:6/22/2026
难度:L3 高级

获取完整源码

演示视频仅作效果参考。完整源码、项目说明与运行答疑,请私聊沟通(适合毕业设计 / 课程设计 / 课设参考)。

获取完整源码观看演示视频
含项目说明文档,便于对照学习
可本地运行,适合课设演示
沟通获取后可咨询运行问题

项目封面

截图 1

项目概览

本平台对接北京新发地农产品批发市场官方公开接口,收录约 41 万条真实交易价格数据(2024–2026),采用 Flask + SQLite + ECharts + scikit-learn 技术栈。提供数据概览、多条件价格查询与 CSV 导出、单品走势与多品种对比分析、线性回归/随机森林/梯度提升价格预测(自动过滤低 R² 模型),以及基于涨跌幅阈值的异常预警。含独立爬虫脚本与管理员数据同步、模型训练功能,适合作为毕业设计中农产品价格分析、时间序列预测与 Web 爬虫方向。

项目说明

基于机器学习的农产品价格分析及预测平台

项目简介

本平台基于 Python Flask 框架构建,整合北京新发地农产品批发市场真实价格数据,提供数据概览、价格查询、多维分析、机器学习价格预测和价格异常预警等功能模块,适用于农产品市场价格趋势研究和价格预测场景。

数据来源为新发地市场官方公开接口,所有数据均为真实市场交易价格,非 Mock 生成。


功能模块

模块功能说明
用户管理用户注册、登录、角色权限控制(管理员/普通用户)
数据概览价格记录总量、品种数、分类数、时间范围统计卡片;近30日市场均价走势图;分类均价分布饼图;热门农产品 TOP10 排行
价格数据多条件组合查询(品名、分类、产地、日期范围)、分页浏览、CSV 导出
价格分析单品价格走势分析(含统计摘要);多品种价格对比(最多5个);产地价格分布统计;月度均价统计
智能预测基于线性回归/随机森林/梯度提升三种 ML 模型的价格预测,展示历史与预测走势对比图、预测摘要。自动过滤 R² < 0.3 的不可靠模型
价格预警基于涨跌幅阈值的异常波动自动检测,展示预警列表
系统管理管理员专属页面,支持数据同步、模型训练、价格预警检测、用户管理、操作日志查看

数据来源

数据集文件来源说明
新发地市场价格data/prices.csv新发地市场官方 API约 41 万条真实交易价格数据,时间范围 2024-01-01 至 2026-06-30

数据字段说明:

字段说明
source_id新发地数据源 ID
prod_name农产品名称
prod_cat一级分类
prod_pcat二级分类
low_price最低价(元/斤)
high_price最高价(元/斤)
avg_price平均价(元/斤)
place产地
spec_info规格信息
unit_info单位
pub_date发布日期

标准版目录结构

python-nongchanpin-price-fenxi-yuce/
├── app/                        # 应用核心代码
│   ├── __init__.py             # Flask 应用工厂
│   ├── database.py             # SQLite 数据库连接与表结构初始化
│   ├── models.py               # 用户模型与认证辅助
│   ├── routes/
│   │   ├── api.py              # REST API 路由
│   │   └── pages.py            # 页面路由
│   └── services/
│       ├── __init__.py         # 服务模块
│       ├── analyzer.py         # 价格数据分析服务
│       ├── data_crawler.py     # 新发地数据爬取服务
│       ├── data_import.py      # CSV 数据导入服务
│       ├── ml_trainer.py       # 机器学习模型训练服务
│       └── predictor.py        # 价格预测服务
├── crawler/                    # 独立爬虫脚本
│   ├── __init__.py             # 爬虫包说明
│   └── xinfadi_crawler.py      # 新发地价格爬虫(支持命令行参数)
├── config.py                   # 平台配置文件
├── run.py                      # 应用启动入口
├── requirements.txt            # Python 依赖包清单
├── data/
│   └── prices.csv              # 爬取的原始价格数据
├── instance/
│   └── agri_platform.db        # SQLite 数据库文件(自动生成)
├── ml_models/                  # 训练好的模型文件(自动生成)
│   ├── 番茄/
│   │   ├── random_forest.joblib
│   │   ├── random_forest_meta.json
│   │   ├── linear_regression.joblib
│   │   ├── linear_regression_meta.json
│   │   ├── gradient_boosting.joblib
│   │   └── gradient_boosting_meta.json
│   └── ...                     # 25 个品种
├── scripts/
│   ├── init_system.py          # 一键初始化脚本(下载数据+导入+训练)
│   └── finish_init.py          # 快速初始化脚本(跳过下载,直接导入+训练)
├── static/
│   ├── css/
│   │   └── style.css           # 自定义样式
│   └── js/
│       ├── common.js           # 全局工具函数(API封装、图表通用配置)
│       ├── dashboard.js        # 数据概览页逻辑
│       ├── data.js             # 价格数据页逻辑
│       ├── analysis.js         # 价格分析页逻辑
│       ├── prediction.js       # 智能预测页逻辑
│       └── admin.js            # 系统管理页逻辑
├── templates/
│   ├── base.html               # 基础模板(导航栏、CDN 引用)
│   ├── login.html              # 登录页
│   ├── register.html           # 注册页
│   ├── dashboard.html          # 数据概览页
│   ├── data.html               # 价格数据页
│   ├── analysis.html           # 价格分析页
│   ├── prediction.html         # 智能预测页
│   ├── alerts.html             # 价格预警页
│   └── admin.html              # 系统管理页
├── 运行步骤必看/
│   └── window.md               # Windows 运行步骤说明
├── mac_run.sh                  # macOS/Linux 一键启动脚本
├── window_run.bat              # Windows 一键启动脚本
├── 训练手册.md                  # 模型训练手册
└── README.md                   # 项目简介

技术栈

类别技术
后端Python 3.9+ + Flask 3.0
数据库SQLite 3
前端HTML5 + Bootstrap 5.3 + ECharts 5.5
机器学习scikit-learn 1.5(线性回归、随机森林、梯度提升)
数据处理pandas 2.x + numpy 2.x
模型持久化joblib 1.4(含 numpy BitGenerator 跨版本兼容处理)
认证Flask-Login + Werkzeug pbkdf2:sha256

环境要求

项目要求
Python3.9 及以上
操作系统Windows / macOS / Linux
内存建议 2GB 以上
磁盘约 500MB(含依赖和数据库)
浏览器Chrome / Firefox / Safari / Edge 现代版本

账号信息

角色用户名密码
管理员adminadmin123
普通用户useruser123

管理员拥有系统管理页面访问权限,可同步数据、训练模型、检测预警、管理用户和查看操作日志。新注册用户默认为普通用户角色。


模型训练概况

项目说明
训练品种25 个热门品种
模型数量75 个(25 品种 × 3 种算法)
可用模型67 个(R² ≥ 0.3)
良好模型48 个(R² ≥ 0.8)
特征数10 个时序特征(lag + rolling + 时间特征)
数据分割80% 训练 / 20% 测试(时间顺序,无随机打乱)

模型质量筛选:R² < 0.3 的模型自动隐藏,用户无法在预测界面选择使用。详见 训练手册

获取完整源码

技术分类

包含内容

完整源码
项目说明文档
演示材料

适合方向

适合软件工程、农业信息化、数据科学专业毕业设计中农产品价格预测、数据爬取与 Flask 可视化分析方向。

关于 AI源码

AI源码 整理计算机毕业设计、课程设计向的可运行项目参考,含说明文档与演示材料。完整源码请通过联系方式沟通获取。

QQ: 861077046
邮箱: 861077046@qq.com
已帮助 21+ 位同学完成选题参考
问能不能做我的题目

相关推荐

查看全部 →
虚假新闻检测系统
高级

虚假新闻检测系统

基于 ConceptNN 概念神经网络的虚假新闻检测 FastAPI 服务,支持文本 Sentence-Transformer 与图像 ResNet18 双模态特征及增量学习,可对接 Java 后端实时预测,适合 NLP+CV 毕业设计。

PythonHTMLSQLite
4.854
微博热点数据分析与可视化系统
高级

微博热点数据分析与可视化系统

Flask 微博热搜分析平台:自动爬取热搜与评论、jieba 分词清洗、SnowNLP 情感分类,ECharts 热度排行/情感饼图/词云可视化,SQLite 存储与角色权限,适合 Python 数据分析毕业设计。

PythonHTMLSQLite
4.873
基于 Python 的短视频用户行为分析系统
高级·新上架

基于 Python 的短视频用户行为分析系统

基于 KuaiRec/KuaiRand 数据集的短视频分析平台:行为漏斗、推荐偏差、KMeans 聚类、TF-IDF/t-SNE、LightGCN 图推荐与 A/B 实验,Flask 仪表盘一键重训,适合推荐系统大数据毕业设计。

PythonHTMLSQLite
4.875
城市交通流量预测与拥堵成因分析系统
高级

城市交通流量预测与拥堵成因分析系统

城市交通拥堵 monorepo:data-pipeline 多源时空特征、STGNN Proxy 流量预测、归因分析与 Leaflet 地图可视化,FastAPI 加载离线产物,适合交通大数据与计算机设计毕业设计。

PythonHTMLSQLite
4.820
电商用户行为漏斗与CRO转化率优化分析
高级·新上架

电商用户行为漏斗与CRO转化率优化分析

电商漏斗 CRO 分析平台:页面/事件双漏斗、渠道设备多维诊断、PIE 优先级矩阵、卡方检验与 XGBoost 购买预测,Flask+ECharts 仪表板,支持 Retailrocket 真实数据,适合电商数据分析毕业设计。

PythonHTMLSQLite
4.866
基于 Python 的汽车市场数据分析与可视化平台
高级·新上架

基于 Python 的汽车市场数据分析与可视化平台

Flask 汽车市场分析平台:整合 Cars24/UCI Automobile 等多源真实数据集(统一 CNY),含多维分析、随机森林二手车价格预测、品牌对比与销量统计,适合 Python 数据分析毕业设计。

PythonHTMLSQLite
4.894