Files
python-flask/终极项目/项目需求.md
2025-09-11 16:13:52 +08:00

3.2 KiB
Raw Permalink Blame History

项目需求:校园交友平台

项目简介

本项目旨在为大学生提供一个轻松、有趣且安全的交友平台,帮助同学们结识志同道合的朋友。平台支持个性化用户资料、兴趣标签匹配、即时聊天等功能,同时通过爬虫技术获取校园内的活动信息,促进线下社交互动。


功能需求

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 的即时通讯,提高聊天实时性
  • “心动模式”:用户相互点赞后才能发起对话
  • 地图定位功能,推荐附近有相同兴趣的同学

推荐项目命名

  • 校园知己
  • 缘来是你
  • 同学圈
  • 校缘交友