97 lines
3.2 KiB
Markdown
97 lines
3.2 KiB
Markdown
# **项目需求:校园交友平台**
|
||
|
||
## **项目简介**
|
||
本项目旨在为大学生提供一个轻松、有趣且安全的交友平台,帮助同学们结识志同道合的朋友。平台支持个性化用户资料、兴趣标签匹配、即时聊天等功能,同时通过爬虫技术获取校园内的活动信息,促进线下社交互动。
|
||
|
||
---
|
||
|
||
## **功能需求**
|
||
### 1. **用户管理**
|
||
- 用户注册、登录(使用 SQLAlchemy 实现)
|
||
- 用户资料管理(头像、昵称、个人简介、兴趣爱好、联系方式等)
|
||
- 提供多标签系统(如:音乐、电影、编程、健身、旅行等)
|
||
- 用户可自定义隐私设置(如是否公开联系方式)
|
||
|
||
### 2. **匹配与推荐**
|
||
- 系统根据以下条件推荐好友:
|
||
- 兴趣爱好相似度
|
||
- 所在学院/专业
|
||
- 活动参与记录
|
||
- 推荐系统可提供“猜你喜欢”功能,推荐可能感兴趣的人
|
||
|
||
### 3. **即时通讯**(进阶功能)
|
||
- 支持私信聊天,具备以下功能:
|
||
- 文本消息
|
||
- 图片/文件传输
|
||
- 已读/未读标识
|
||
- 提供黑名单及举报功能,保障用户安全
|
||
|
||
### 4. **活动聚合功能**
|
||
- 使用正则爬虫抓取校园内的各类活动信息(如社团活动、讲座、比赛、聚会等)
|
||
- 提供活动推荐功能,推荐符合用户兴趣的活动
|
||
- 活动详情页面支持:
|
||
- 活动报名
|
||
- 讨论区,用户可留言交流
|
||
|
||
### 5. **用户互动**
|
||
- 用户可浏览其他人的主页,查看他们的动态、兴趣、参与的活动等
|
||
- 支持点赞、评论、关注等社交功能
|
||
- 支持匿名朋友圈(仅展示标签,无用户真实信息)
|
||
|
||
### 6. **管理员后台**
|
||
- 管理员可审核用户信息,避免虚假资料
|
||
- 提供举报管理、内容屏蔽等功能
|
||
- 后台可查看平台的用户活跃度、热门标签、活跃社团等数据分析
|
||
|
||
---
|
||
|
||
## **技术要求**
|
||
### 1. **后端**
|
||
- 使用 **Flask** 开发
|
||
- 使用 **SQLAlchemy** 进行 ORM 数据库管理
|
||
|
||
### 2. **前端**
|
||
- 使用 **Bootstrap** 提升页面美观度
|
||
- 提供多标签筛选、搜索、推荐等交互功能
|
||
|
||
### 3. **爬虫**
|
||
- 使用 `requests` + `re` 编写爬虫,获取校园活动信息
|
||
- 数据清洗时提取活动名称、时间、地点、报名方式等关键信息
|
||
- 支持定时爬取,确保信息时效性
|
||
|
||
### 4. **数据库**
|
||
- 使用 **MySQL** 作为项目数据库
|
||
- 数据表结构设计包含:
|
||
- 用户表
|
||
- 好友关系表
|
||
- 聊天消息表
|
||
- 活动信息表
|
||
- 举报/屏蔽表
|
||
|
||
---
|
||
|
||
## **项目流程**
|
||
1. 设计数据库(ER图)
|
||
2. 实现用户注册、登录与资料管理
|
||
3. 编写推荐算法,实现好友推荐和活动推荐功能
|
||
4. 开发聊天功能并测试
|
||
5. 编写爬虫,确保活动数据获取准确
|
||
6. 实现管理员后台
|
||
7. 美化前端,提升用户交互体验
|
||
8. 代码优化与测试
|
||
|
||
---
|
||
|
||
## **附加功能(进阶)**
|
||
- 实时在线状态(显示用户是否在线)
|
||
- 基于 WebSocket 的即时通讯,提高聊天实时性
|
||
- “心动模式”:用户相互点赞后才能发起对话
|
||
- 地图定位功能,推荐附近有相同兴趣的同学
|
||
|
||
---
|
||
|
||
## **推荐项目命名**
|
||
- 校园知己
|
||
- 缘来是你
|
||
- 同学圈
|
||
- 校缘交友 |