1 changed files with 113 additions and 0 deletions
@ -0,0 +1,113 @@ |
|||||
|
# 数据爬虫系统 - 期末作业项目 |
||||
|
|
||||
|
## 项目概述 |
||||
|
|
||||
|
这是一个完整的 Java 爬虫项目,实现了 MVC 架构、Command 模式、Strategy 模式,包含自定义异常体系,提供了数据爬取、存储和可视化功能。 |
||||
|
|
||||
|
## 快速开始 |
||||
|
|
||||
|
### 1. 进入项目目录 |
||||
|
```bash |
||||
|
cd d:\期末作业 |
||||
|
``` |
||||
|
|
||||
|
### 2. 编译运行(简化版) |
||||
|
```bash |
||||
|
javac SimpleCrawler.java |
||||
|
java SimpleCrawler |
||||
|
``` |
||||
|
|
||||
|
### 3. 操作 |
||||
|
1. 输入 `4` 爬取所有数据 |
||||
|
2. 输入 `6` 生成可视化页面 |
||||
|
3. 打开浏览器查看 visualization/ 目录下的 HTML 文件 |
||||
|
|
||||
|
## 项目特性 |
||||
|
|
||||
|
### 已实现的功能 |
||||
|
- ✅ 完整的 MVC 架构 |
||||
|
- ✅ Command 模式设计 |
||||
|
- ✅ Strategy 模式实现 |
||||
|
- ✅ CSV 数据存储 |
||||
|
- ✅ HTML 可视化图表 |
||||
|
- ✅ 命令行交互界面 |
||||
|
- ✅ 模拟数据生成 |
||||
|
|
||||
|
### 设计模式 |
||||
|
- **MVC架构**:Model-View-Controller 分离 |
||||
|
- **Command模式**:所有操作封装为命令对象 |
||||
|
- **Strategy模式**:不同数据源使用不同策略 |
||||
|
|
||||
|
## 文件结构 |
||||
|
|
||||
|
### 简化版(推荐) |
||||
|
``` |
||||
|
期末作业/ |
||||
|
├── SimpleCrawler.java # 完整程序(一个文件) |
||||
|
├── data/ # CSV 数据文件 |
||||
|
└── visualization/ # HTML 可视化页面 |
||||
|
``` |
||||
|
|
||||
|
### 完整版(按包结构) |
||||
|
``` |
||||
|
期末作业/ |
||||
|
├── Main.java # 主程序入口 |
||||
|
├── command/ # 命令模式 |
||||
|
├── controller/ # 控制器 |
||||
|
├── model/ # 数据模型 |
||||
|
├── strategy/ # 策略模式 |
||||
|
├── repository/ # 数据访问 |
||||
|
├── exception/ # 自定义异常 |
||||
|
└── view/ # 视图层 |
||||
|
``` |
||||
|
|
||||
|
## 数据文件 |
||||
|
|
||||
|
### 1. 长沙天气 (changsha_weather_2026.csv) |
||||
|
- 日期、天气、最高温、最低温、风力 |
||||
|
|
||||
|
### 2. 地震数据 (earthquake_2026.csv) |
||||
|
- 时间、震级、纬度、经度、深度、地点 |
||||
|
|
||||
|
### 3. 新闻排行榜 (news_rank_202605.csv) |
||||
|
- 排名、标题、热度、链接 |
||||
|
|
||||
|
## 可视化页面 |
||||
|
|
||||
|
### weather.html |
||||
|
- 温度趋势折线图 |
||||
|
- 渐变背景色设计 |
||||
|
|
||||
|
### earthquake.html |
||||
|
- 震级柱状图 |
||||
|
- 详细数据表格 |
||||
|
|
||||
|
### news.html |
||||
|
- 新闻热度横向柱状图 |
||||
|
- 详细列表展示 |
||||
|
|
||||
|
## 文档 |
||||
|
|
||||
|
- **使用说明.md** - 详细使用说明和开发指南 |
||||
|
- **项目说明.md** - 项目详细介绍和类说明 |
||||
|
|
||||
|
## 技术栈 |
||||
|
|
||||
|
- Java 8+ |
||||
|
- Chart.js (图表库) |
||||
|
- HTML + CSS + JavaScript |
||||
|
|
||||
|
## 开发建议 |
||||
|
|
||||
|
如需集成真实的爬虫功能,请下载: |
||||
|
- Jsoup (HTML 解析) |
||||
|
- Apache HttpClient (HTTP 请求) |
||||
|
|
||||
|
## 许可证 |
||||
|
|
||||
|
本项目用于期末作业演示。 |
||||
|
|
||||
|
--- |
||||
|
|
||||
|
**祝使用愉快!** 🎉 |
||||
|
|
||||
Loading…
Reference in new issue