# 基于爬虫的电商比价系统 **Repository Path**: q1297416662/PriceCompare ## Basic Information - **Project Name**: 基于爬虫的电商比价系统 - **Description**: django后端+vue前端 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 25 - **Forks**: 4 - **Created**: 2022-05-02 - **Last Updated**: 2025-01-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 安装依赖 ~~~python pip install -r requirement.txt ~~~ # 绑定数据库 修改 `PriceCompare/settings.py`中 `DATABASES` 处的参数 ~~~python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'pricecompare', #数据库名称 'HOST':'127.0.0.1', #数据服务器IP 'PORT':3306, #端口号 ,不需要加引号 'USER':'root', #用户名 'PASSWORD':'142857' #密码 } } ~~~ 需要在mysql中创建一个 `pricecompare`数据库,mysql交互环境中使用下面语句创建(指定utf-8字符集) ~~~mysql create database pricecompare DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; ~~~ # 下载并运行Redis 下载最新版的redis的zip版本[点击前往](https://github.com/tporadowski/redis/releases) 并双击运行`redis-server.exe`文件 # 迁移和同步数据 在项目的根目录下,即打开编辑器到有`manage.py`文件的目录,使用指令,在终端(编辑器的或者系统终端)分别执行下面指令 ~~~cmd python manage.py makemigrations python manage.py migrate ~~~ 这时`pricecompare`数据库中应该会有很多张表 # 载入测试数据 在上一步完成的基础上使用指令 ~~~cmd python manage.py loaddata db.json ~~~ 测试数据中包含一个用户 - phone:17364326999 - password:123456 一个超级管理员 - username:admin - password:123456 一个普通管理员 - username:admin_low - password:123456 # 运行项目 在上一步的终端中执行下面指令 ~~~python python manage.py runserver 127.0.0.1:8000 ~~~ 然后使用浏览器打开 `http://127.0.0.1:8000/`这个链接 # 说明 ~~~cmd PriceCompare/ |-- PriceCompare # Django的全局配置目录 | |-- __init__.py | |-- settings.py # 全局配置 | |-- urls.py # url配置,映射到了frontend/urls.py | `-- wsgi.py |-- backend # 处理后台页面(用户中心,管理员后台)逻辑的app | |-- __init__.py | |-- admin.py | |-- apps.py | |-- imageCode.py # 生成图片验证码 | |-- migrations # 数据同步和迁移用django自动生成 | |-- models.py # 数据库模型 | |-- tests.py | |-- utils.py # 工具函数 | `-- views.py # 视图逻辑 |-- frontend # 处理前台页面(如主页,搜索页)逻辑的app | |-- __init__.py | |-- admin.py | |-- apps.py | |-- migrations # 数据同步和迁移用django自动生成 | |-- models.py # 数据库模型 | |-- tests.py | |-- urls.py # url路径映射到view中的函数 | `-- views.py # 视图逻辑 |-- spider # 获取商品搜索数据的爬虫 | |-- UA.txt # User-Agent库 | |-- __init__.py | |-- main.py # 爬虫主函数 | |-- mspider.py # 爬虫工具函数 | |-- proxy.py # 代理池 | `-- tmp.ipynb |-- static_files # 静态资源 | |-- api # 测试用的模拟后端返回数据的json文件 | |-- css | |-- font | |-- fonts | |-- images | |-- js | |-- layui | |-- page # 后端的iframe页面 | |-- upload # 上传的文件 | |-- favicon.ico # 商标图片 | |-- index.html # 主页 | |-- backindex.html # 后台主页 | |-- login.html # 登录页 | |-- register.html # 注册页 | `-- search.html # 搜索页 |-- manage.py # 程序主入口 |-- files |-- db.json # 测试数据 |-- private_info.py # 密码密钥之类的不能分享的数据 |-- README.md # 项目简介 |-- requirements.txt # 项目依赖库 |-- API文档.md `-- temp.py ~~~