闲暇时间XJBG的一个项目,一个下午突发奇想想看看相亲网上的妹子,于是这个项目诞生了。整个项目暂时分为两个部分,后台管理系统,数据服务端。Vue技术栈的管理系统,express的数据服务端,基于node的爬虫,利用pm2和nginx 进行运维。
欢迎Star✨✨
个人的力量是渺小的,希望众人拾材火焰高,如有问题请直接在 Issues 中提,或者您发现问题并有非常好的解决方案,欢迎 PR 👍
1.1.0- 后台管理页线上地址: http://girl.xutianshi.top/admin/index.html
移动端、搁置ing还不想做 0.0.1- 移动端线上地址: http://girl.xutianshi.top/
本地运行需要安装有MongoDB
# 克隆项目
git clone https://github.com/Xu-Angel/Girl.git
# 开启MongoBD
# 进入server文件夹安装依赖包开启调试(必须)
npm i
npm run dev
# 进入admin文件夹安装依赖包开启调试(必须)
npm i
npm run dev
# 移动端开启 进入app文件夹安装依赖包开启调试(可选)
npm i
npm run start
注意 管理员注册默认是普通管理员,需要数据库更改role字段,重新登录系统才可以使用爬取功能
进行配置参数后就可以点击开始爬取
nodejs + express + mongodb + mongoose + es6/7 + vue + element-ui
-
后台功能
- 妹子列表✨✨
- 默认展示
- 展示规则
- 整表展示
- 根据登录IP显示
- 设置权重值
- 妹子详情
- 列表小图,点击看大图
- 返回上次列表
- 筛选
- 根据关键字如年龄、收入、属相、地区
- 用户
- 登录、注册
- 用户中心
- 权限验证
- 路由权限
- 按钮权限
- 超级管理员
- 图片上传
- 妹子列表✨✨
-
移动端功能
- 列表展示
- 详情展示
-
服务端功能
- 代理IP爬取、使用、导出、导入
- 爬取关键字、cookie可配置化
- 界面化爬取
- 爬取状态实时展示
- 定时爬取任务
- 定时爬取女性数据
- 每20分钟更新IP池
- 每30分钟检查IP池
- 每日设置一次权重
- 日志类
- 访问日志
- 日志文件
- 运行日志
-
服务器端功能
- 部署上线
- nginx代理
表设计>: model
- status *
- 100 参数错误,需重新填写
- 101 参数正常,但数据有误
- 200 响应成功,且数据操作正常
- 400 程序运行错误,系统捕获错误
- data *
- message
api文档>: api文档
|-- admin 后台操作页
|-- build webpack构建
| |-- build.js
| |-- webpack.prod.conf.js
|-- config 运行配置
| |-- dev.env.js 开发配置
| |-- prod.env.js 生产配置
|-- dist 静态资源打包目录
|-- mock mock数据
|-- src 源码目录
| |-- permission.js 权限文件
| |-- api 接口
| | |-- login.js
| |-- assets 资源文件
| |-- components 全局组件
| | |-- Breadcrumb
| |-- icons
| |-- router Vue-router
| | |-- index.js
| |-- store Vuex
| | |-- getters.js
| | |-- index.js
| | |-- modules
| | |-- app.js
| | |-- user.js
| |-- styles 全局样式
| | |-- element-ui.scss
| |-- utils 工具集
| | |-- auth.js
| |-- views 页面文件夹
| |-- detail 页面
| |-- layout 布局
| | |-- Layout.vue
| | |-- components
|-- static 静态资源
|-- .gitkeep
|-- server 数据服务端
|-- config 运行配置
| |-- default.js 默认配置
| |-- development.js 开发配置
|-- controller 处理中心,负责路由及数据库的具体操作
| |-- admin.js
| |-- basePrototype.js
| |-- girl.js
| |-- spider.js
|-- core 爬虫脚本
| |-- schedule.js
|-- db JSON文件存放处
|-- getGirls 爬虫草稿
|-- logs 日志文件夹
├── middleware 中间件
│ ├── check.js 权限验证
│ └── statistic.js API数据统计
|-- model
| |-- admins.js 管理员模型
| |-- allgirsl.js 脏模型
| |-- details.js 用户详情模型
| |-- index.js
|-- mongodb 连接数据库
| |-- db.js
|-- public 静态资源目录
|-- routes 路由配置
|-- socket socket
|-- app 移动端
|-- screenshot 截图
v1.0.0
- 配置化开启任务
- 脚本状态展示
- IP爬取
- 列表页展示搜索
- 详情页数据展示,查看
- 管理员管理、信息更改
- 图片上传
- 登录注册
- pm2 + nginx 运维
- 部署上线
v1.1.0
- 标签导航
- 增加定时任务脚本
- 新增IP池状态展示
- 构建IP池进行代理
- 路由、系统日志列表
- 日志文件查看
- 修改列表展示
- 个性化默认头像
- 详细页图片放大优化
v1.1.1
- 增加权重(受欢迎度)
- 定时检查IP脚本
- 根据用户登录地进行显示数据
- 搭建移动端app 0.0.1版本
MIT license.
Copyright (c) 2019-present Xu-Angel