超视职场是一个智能化的招聘数据采集与分析系统,专门用于从'智联招聘'招聘网站爬取职位信息,并提供完整的数据存储、分析和可视化功能。系统采用现代化Web架构设计,支持多用户、多城市数据采集,具备完善的用户认证体系和丰富的数据分析功能。
- 🔐 完整用户系统 - 注册/登录、邮箱验证、个人资料管理
- 📧 邮件服务 - 验证码发送、账户通知等邮件功能
- 🕷️ 智能爬虫 - 支持多城市、关键词的招聘数据采集
- 📊 数据分析 - 多维度统计分析和交互式图表展示
- 🎨 现代化UI - 基于Bootstrap 5的响应式Web界面
- 🗄️ 数据管理 - SQLite数据库存储,支持数据导出和记录管理
CSZC/ ├── app.py # Flask Web应用主程序 ├── auth.py # 用户认证模块 ├── chart_utils.py # 图表数据处理模块 ├── config copy.py # 配置文件副本(请将该文件重命名为config.py,否则无法使用) ├── data_processing.py # 数据处理与清洗模块 ├── database.py # 数据库操作模块 ├── email_service.py # 邮件服务模块 ├── scraper.py # 网页爬虫模块 ├── visualization.py # 数据可视化模块 ├── templates/ # Jinja2模板文件 │ ├── base.html # 基础模板 │ ├── index.html # 首页 │ ├── landing.html # 着陆页 │ ├── login.html # 登录页面 │ ├── register.html # 注册页面 │ ├── profile.html # 个人中心 │ ├── scraper.html # 数据采集页面 │ ├── data.html # 数据查看页面 │ └── analysis.html # 数据分析页面 ├── static/ # 静态资源 │ ├── for_readme/ # Readme展示资源 │ ├── css/ # 样式文件 │ │ ├── landing.css # 着陆页样式 │ │ ├── nav.css # 导航栏样式 │ │ └── style.css # 主要样式 │ └── public/ # 静态文件 ├── requirements.txt # pip依赖管理文件 ├── pyproject.toml # uv项目配置文件 ├── uv.lock # uv锁定文件 ├── run_flask.bat # Windows启动脚本 ├── data.db # SQLite数据库 ├── .gitignore # Git忽略文件 ├── .python-version # Python版本文件 └── README.md # 项目文档 - Python 3.13+
- pip 或 uv 包管理器
-
克隆项目
git clone https://github.com/persist-1/CSZC_ZhilianBI.git cd CSZC_ZhilianBI -
选择环境管理方式
# 创建虚拟环境 python -m venv venv # 激活虚拟环境 source venv/bin/activate # Linux/Mac # 或 venv\Scripts\activate # Windows # 安装依赖 pip install -r requirements.txt
# 安装 uv(如果尚未安装) pip install uv # 创建虚拟环境并安装依赖 uv sync # 激活虚拟环境 source .venv/bin/activate # Linux/Mac # 或 .venv\Scripts\activate # Windows
-
运行应用
python app.py uv run app.py # 根据环境选择使用pip或uv或点击
run_flask.bat启动应用 -
访问应用 打开浏览器访问
http://localhost:60003
- Python 3.11+ - 核心开发语言
- Flask - Web框架,提供HTTP服务和路由
- SQLite - 轻量级数据库,存储用户和爬取数据
- Selenium - Web自动化,模拟浏览器爬取数据
- Pandas - 数据处理和分析
- bcrypt - 密码加密和验证
- Bootstrap 5 - 响应式UI框架
- Chart.js - 交互式数据可视化
- Jinja2 - 模板引擎
- JavaScript ES6+ - 前端交互逻辑
系统使用SQLite数据库,数据文件:data.db
参考config.py中的配置
支持SMTP邮件服务,用于用户验证和通知
参考config.py中的配置
- 密码加密 - 使用bcrypt进行密码哈希存储
- 会话管理 - Flask Session安全会话管理
- 邮箱验证 - 注册邮箱验证,防止恶意注册
- 输入验证 - 前后端双重数据验证
- SQL注入防护 - 参数化查询
- XSS防护 - 模板自动转义
-
浏览器驱动问题
- 确保Microsoft Edge浏览器已安装
- webdriver-manager会自动下载驱动
-
邮件发送失败
- 检查邮箱配置
- 确保开启SMTP服务
-
数据库权限问题
- 确保数据库文件路径有写入权限
本项目采用 MIT 许可证。
本项目仅用于学习和研究目的,请遵守相关网站的robots.txt协议和使用条款,不得用于商业用途或恶意爬取,不得影响目标网站运行或造成经济损失以及其他负面影响。使用者需自行承担使用风险。
该项目是Python课程设计结课作业,质量偏赶工水平,还请见谅
🌟 如果这个项目对你有帮助,请给我们一个Star!








