Django基于用户画像的电影推荐系统源码_天天观点
一、项目介绍
本系统是以Django作为基础框架,采用MTV模式,数据库使用MongoDB、MySQL和Redis,以从豆瓣平台爬取的电影数据作为基础数据源,主要基于用户的基本信息和使用操作记录等行为信息来开发用户标签,并使用Hadoop、Spark大数据组件进行分析和处理的推荐系统。管理系统使用的是Django自带的管理系统,并使用simpleui进行了美化。
二、系统架构图
三、系统模块图
四、目录结构及主要文件说明
├─BiShe│ ├─admin.py (Django后端管理系统主要配置)│ ├─views.py (各个页面访问调用)│ └─urls.py (各个页面访问地址)│├─BiSheServer│ ├─settings.py (Django主要配置文件)│ └─urls.py (一级地址处理地址)│├─config (配置文件存放目录)│ └─conf.ini (本系统主要配置文件)│├─spark│ ├─jars (MySQL连接jar包)│ └─spark.py (Spark处理用户画像,可独立)│├─movie│ ├─models.py (电影模型配置,对应数据库表)│ ├─views.py (电影的api接口)│ └─urls.py (二级movie地址配置)│├─user│ ├─models.py (用户模型配置,对应数据库表)│ ├─views.py (用户的api接口)│ └─urls.py (二级user地址配置)│├─api (api文件夹)│ ├─api.py (其他API)│ ├─movie_api.py (电影操作api)│ ├─user_api.py (用户操作api)│ ├─crontab.py (配置包)│ ├─captcha.py (生成验证码api)│ ├─delay_work.py (使用线程修改标签)│ ├─districts.py (查询区域地址api)│ ├─email.py (邮箱发送邮件api)│ ├─email_vail.py (邮件发送前的验证)│ ├─middleware_log.py (自定义日志中间件)│ ├─MidnightRotatingFileHandler.py (线程安全日志切割配置)│ ├─model_json.py (数据库查询结果转换)│ ├─redis_pool.py (Redis连接池)│ ├─models.py (中国省市地区表、首页轮播图表)│ ├─response.py (api统一格式化响应)│ ├─set_var.py (模板配置set变量操作符)│ ├─upload_log.py (上传系统日志文件)│ ├─urls.py (api响应地址配置)│ └─views.py (404、500错误页面配置)│├─log (日志文件存放临时目录)├─static (静态文件存放目录)├─templates (页面模板文件存放目录)└─requirements.txt (依赖安装需求库文件)
五、配置文件说明
;系统配置 必需配置[DEFAULT];是否启用调试服务DEBUG = True;是否启用日志系统USE_LOG = False;允许访问的地址ALLOWED_HOSTS = [*];静态文件目录STATIC_HOME = static;日志目录LOG_HOME = log/;模板目录TEMPLATES_HOME = templates; 设置允许上传的文件格式ALLOW_EXTENSIONS = ["png", "jpg", "jpeg"]; 设置允许上传的文件大小,B字节为单位ALLOW_MAXSIZE = 5242880;头像文件存放地址AVATARS_UPLOAD_FOLDER = static/images/avatars/;MySql数据库配置 必需配置[DATEBASE];数据库引擎驱动DATABASES_ENGINE = django.db.backends.mysql;数据库名称DATABASES_NAME = sql_bs_sju_site;数据库链接地址DATABASES_HOST = 127.0.0.1;数据库端口DATABASES_PORT = 3306;数据库用户名DATABASES_USER = sql_bs_sju_site;数据库密码DATABASES_PASSWORD = xzDPV7JL79w3Epg;Redis数据库配置 必需配置[REDIS];数据库地址REDIS_HOST = 127.0.0.1;数据库端口号REDIS_PORT = 6379;数据库连接密码REDIS_PASSWORD = 123456;数据库存放的库号REDIS_DB = 2;邮件验证系统配置 可选配置[EMAIL];是否使用邮箱验证服务,False为关闭时将不会真实发送邮件验证,True为启用EMAIL_USE = False;邮件服务器地址EMAIL_HOST = smtpdm.aliyun.com;邮件服务登录账号EMAIL_USER = admin@bishe.com;邮件服务账号密码EMAIL_PASSWORD = 123456;Hadoop配置 可选配置[HADOOP_LOG];Hadoop链接地址HADOOP_HOST = 172.17.183.81; 客户端连接的目录ROOT_PATH = /sys_data_log; HDFS上的路径,注意,需要先在hdfs手动创建此目录REMOTE_PATH = /sys_data_log; 本地路径,建议写绝对路径,例如:E:\my_work\测试目录 "D:/tmp/output"LOCAL_PATH = log/;日志后缀格式,同时也会根据其进行切片;按日切%Y-%m-%d 按月切%Y-%m 按小时切%Y-%m-%d_%HLOG_SUFFIX = %Y-%m-%d
六、安装配置说明
当外部配置完成后,可将本系统根目录中config/conf.ini文件打开,然后修改其中的配置。首先是系统的默认配置服务、MySql数据库配置、Redis数据库配置、邮件验证系统配置和Hadoop等配置。邮件系统主要用于用户注册使用,若无邮件服务,可选择关闭,关闭后会直接提示验证码输入即可。Hadoop、Spark用于离线推荐分析,若无该需求,可选择关闭。注意在创建数据库时请注意将数据库的字符编码设置为utf-8编码集,否则运行命令“python manage.py migrate”会报错,请注意。在项目目录运行命令,创建表结构,同时创建Django管理系统的管理员帐号:python manage.py makemigrations user movie apipython manage.py migratepython manage.py createsuperuser下载基础数据:链接: https://pan.baidu.com/s/1zJSv1KCHwhpzbhjfDrDzWQ?pwd=b5d8 提取码: b5d8导入基础数据,登陆进入mysql控制台,并通过source 命令调用sql文件,如:(此处的sql文件为上面下载的三个基础数据文件)mysql –uroot –p123456 -Dtestmysql> source sys.sql上述所有工作都准备完成后使用命令启动该系统服务:python manage.py runserver 0.0.0.0:8001(8001为端口号,可根据需求更换,0.0.0.0表示所有主机都可访问,若设置为127.0.0.1,则表示只可本地访问)离线处理(可选部分)将项目目录下spark/jars文件夹中的mysql-connector-java-8.0.24.jar文件复制到spark的jars目录下。修改spark目录下的spark.py文件中的spark配置和mysql配置,将其上传到Linux下,加入Linux定时任务每日执行。运行命令:python3 ./spark.py ,即可每日自动处理离线数据,精准推荐,推荐方式同时包含基于电影内容(基于内容)、基于用户相似度(基于协同过滤)推荐的方式。后期如有兴趣的同学还可完善改为实时推荐。同系统安装说明书里的Hadoop、Spark组件都是可选部分,只用于离线处理部分,不安装也可运行整个系统
七、系统安装使用说明书
使用说明书包含在本文结尾的源码文件里,都为大家打包好了。
系统安装使用说明书
(相关资料图)
系统安装使用说明书截图
八、系统实现效果
1、用户登录
用户登录失败
用户登录成功
用户注册未完成
用户继续完成注册
2、用户注册
用户注册第一步
用户注册第一步数据不符合要求提示
用户注册第一步用户已存在错误提示
用户注册第一步验证码过期错误提示
用户注册第二步用户验证
用户注册第二步用户验证邮箱
用户注册第二步用户验证邮箱验证码错误提示
用户注册第三步完善用户信息
用户注册第三步完善用户信息填写用户信息
用户注册第三步完善用户信息跳过提示
用户注册第四步注册成功
3、忘记密码
用户忘记密码第一步账号核实
用户忘记密码第一步账号核实错误提示
用户忘记密码第二步身份验证
用户忘记密码第二步身份验证邮箱错误提示
用户忘记密码第二步身份验证验证码发送成功提示
用户忘记密码第二步身份验证忘记密码验证邮件
用户忘记密码第三步重置密码
用户忘记密码第三步重置密码成功提示
4、电影查询
电影搜索框搜索电影
电影搜索框搜索电影结果显示
电影类别超链接搜索结果显示
5、电影默认推荐
电影默认推荐栏目显示
6、普通用户功能
用户在评论区添加评论
用户在评论区添加评论成功提示
用户在评论区删除评论
用户在评论区删除评论成功提示
用户在评论管理中心管理个人评论
用户在个人中心查看个人信息
用户在个人中心修改个人信息
用户在个人中心修改个人信息错误提示
用户在个人中心修改个人信息成功提示
用户修改密码错误提示
用户修改密码原密码错误提示
用户修改密码修改成功提示
用户修改邮箱错误提示
用户修改邮箱验证码发送成功提示
用户修改邮箱更改邮箱信息验证邮件
用户修改邮箱修改成功提示
电影收藏成功提示
电影取消收藏成功提示
电影收藏管理中心
电影评分成功提示
主页显示栏目电影推荐
页面顶部电影推荐
电影详情页推荐
用户注销提示
7、管理员功能
普通用户与管理员菜单栏对比
管理系统登录页面
管理系统首页工作台
管理员管理数据界面
九、注意:
1.数据库需用5.6以上的mysql版本;2.Python用3.7;3.mysql字符集使用UTF-8;4.user_usersbase表中id为2的账号为访客通用账号,不可移除;5.导入的账号密码为:Zero 123456;6.数据库所有电影数据以movie_collectmoviedb表中电影数据为基础,用户数据以 user_usersbase为基础,导入数据必须先导入这两张表,其余数据后导,删除数据时则相反,需先删除关联其的数据最后再删该表数据。
十、常见错误:
File "D:\app\Python\Python37\lib\importlib\__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "D:\app\Python\Python37\lib\site-packages\django\db\backends\mysql\base.py", line 37, in raise ImproperlyConfigured("mysqlclient 1.3.13 or newer is required; you have %s." % Database.__version__)django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.遇见此错误时,找到对应代码文件中的判断版本的两行代码,前面加注释“# ”,忽略错误。
标签: Django
推荐文章
- 湖北首家宝马新能源展厅BMW i 武汉摩尔城店超然启幕正式开业|快看
- 环球热文:洗牙粉百科_洗牙粉的功效和作用
- 歧视非英语乘客 国泰三空姐被炒
- 大马大师赛男单看点:国羽3将出击,陆光祖最难,李诗沣占上风?
- 【环球播资讯】辽篮关键续约!韩德君签2年老将合同,工资最多排第4,比付豪还少
- 环球热点!武汉未来之光物业服务有限公司(关于武汉未来之光物业服务有限公司介绍)
- 联想 x 英特尔智慧交通主题论坛:以 5G+AI 算力赋能智慧交通
- 新一轮降雨大幕明日揭开 北方气温开启“过山车”模式
- 动态:建筑倒塌损毁、人员被困……上海消防举行地震救援演练
- 今日热门!香港运输及物流局局长:已要求国泰航空管理层立刻改善服务
- 【环球热闻】优化环境,让消费更放心(经济聚焦·挖掘消费潜力①)
- 热门看点:俄罗斯境内遭袭 谁干的?
- 世界今热点:百度上搜不出爱奇艺?百度称已修复bug,爱奇艺:无瓜
- 天天微动态丨侠僧探案传奇之大兴赌坊在线观看_侠僧探案传奇之大兴赌坊
- *ST凯撒:控股股东被动新增平仓,第一大股东变更为海航旅游
- 实时:铸造“湾区光谷”!中山举办首届大珩光电产业论坛
- 环球快资讯丨Model Y搭载刀片电池 比亚迪特斯拉一时瑜亮
- 全球新动态:恩施电子卷宗深度运用
- 三里乡黄鳝养殖产量占全省八成以上
- 什么是真正的中国美学?来《美的殿堂》看看!
- 服刑期间信用卡逾期怎么办 服刑期间信用卡逾期怎么办农行 环球新视野
- 瑞声科技2022年上半年拥有人应占溢利3.5亿元,同比下降62%
- 拓宽“钱”路新担当 全新华菱M7牵引车创“盈”短途货运市场
- 追着花儿看新疆丨新疆洛浦:戈壁滩不再荒凉 有光就有动能
- 【时快讯】夏季谨防儿童溺水!熟记“四知”与“六不要”
- 天天短讯!在妙山村,瞥见未来乡村美妙模样|高质量发展调研行·浙江站
- 环球观速讯丨又一昔日巨头退出法网!英雄迟暮,36岁老将全力备战温网
- 尚荣医疗:5月11日召开业绩说明会,投资者参与
- 现场画面|我国珠峰科考登顶队员更改路线冲击顶峰
- 【焦点热闻】暮光之城5上映时间表_暮光之城5上映时间
- 今日讯!新华时评|认识、适应、引领我国人口发展新常态
- 哈姆:感谢我的队员们 他们本赛季全情投入并一直支持我的工作
- 山科智能:5月22日融资买入205.82万元,融资融券余额2166.78万元
- 野生大熊猫首次现身周至保护区108国道东侧|天天报道
- 抢先布局健康声学赛道 天键股份启动创业板招股_天天微速讯
- 世界新动态:世龙实业5月23日快速反弹
- 金属的通性物理性质(金属的通性)
- 2023河北邯郸高三三模政治
- 美术艺考考什么文化课 美术艺考都考什么
- 【天天快播报】“事故视频快处”系统今起上线 郑州市区发生轻微交通事故 可用“交管12123”APP快速处置
- 焦点快播:越南三宝吃的指哪三宝(越南特产中的白虎活络膏、越南牛角梳)
- 足球10号位是哪个位置 足球10号
- 热火26分大胜凯尔特人3-0!巴特勒16分划水,热火全民皆兵|世界新消息
- 即时看!东莞市气象台发布暴雨黄色预警【III级/较重】【2023-05-22】
- 专访:美国以零和思维对待贸易秩序损害他国利益——访韩国京畿大学教授金周焕
- 当前看点!完善产能布局 鹏辉能源(300438.SZ)拟约130亿元新建年产36GWh储能电池项目
- 世界看点:庞大集团濒临退市,连续多日股价跌停
- 实质性程序包括哪些具体程序(实质性程序包括哪些简介介绍)
- 百度交出搜索引擎王座 全球实时
- 天天热讯:抖音极速版如何打开抖音相册 抖音相册开启方法介绍
- 快看点丨建新股份:公司全资子公司建新瑞祥化学科技公司不涉及生物制药相关技术
- 万物皆可爱!看生物王国里的欢乐派对
- 张家港市乐余镇齐心村:海棠先锋强根系 点滴微举暖民心
- 世界快播:2023中考志愿如何录取规则 怎么填报志愿
X 关闭
最新资讯
- 焦点快播:江西:20.9亿资助学生上学!
- 邵阳液压拟收购威克斯液压78%股权
- “勇士”潜千米 深海探遗珍 热议
- 每日热点:变蛋是晾干还是晒干?
- 央视都看好的《后浪》,被观众要求停播下架,为什么骂声一片? 每日快报
- 中国技术交易所将与天津滨海—中关村科技园合作建设技术市场 天天资讯
- 【世界新要闻】彩金闹天宫金币价格今天多少一克(2023年05月22日)
- 趣睡科技股东户数连续3期下降 筹码集中以来股价累计下跌14.64% 全球焦点
- 以太网连接上不能上网怎么办_以太网连接是什么意思 焦点关注
- 2023父亲节发红包祝福语说什么
- 大连中远海运重工开建“智能研究与实训两用船”-热闻
- 山东:预计今年迎峰度夏期间入鲁外电将达3000万千瓦 全球报道
- 四月份的心情说说_四月份的心情说说有什么
- 注意!6月1日起,北京市政府信息公开大厅搬至新址
- 田其云中国海洋大学_田华 中国海洋大学讲师 最新快讯
- 监管严打促市值管理回归本源 实控人等“伪市值管理”被重罚 天天微资讯
- 蜡烛的气味和软硬 蜡烛的气味_天天报资讯
- 世界微资讯!职业高中能考哪些大学本科_职业高中能考哪些大学
- usb键盘无法识别设备怎么办 usb键盘无法识别
- 许怎么组词_许的组词
- 福建三明一辆7座小车冲出绿道坠河,3人已获救,4人正全力搜救中_全球报道
- 【时快讯】上海星璨整形医院医生以及擅长项目推荐
- 金斯瑞生物科技(01548.HK):传奇生物与投资者订立认购协议
- 体验运动快乐!2023年共筑中国梦广场舞展演举行_全球新消息
- 说案|“好心”的游戏代练?当心是没安好心!
- 今日最新!【短讯】SNEC前瞻|超3000家企业、30万光伏人将赴SNEC大会 “黑科技”、展会亮点抢先看!
- 贵州2地入选首批全国社会治安防控体系建设示范城市-天天观焦点
- “3种旧东西,再穷也不留”,家里若是有,赶紧清理出去,别忘了_热门看点
- 当前报道:马龙:我们都相信自己能做些伟大的事情 信仰的力量非常强大
- 【天天新视野】匆的拼音和组词_匆组词精选
- 榴莲树几年结果如何管理_榴莲树几年结果
- 主发起行增持村镇银行频现 今热点
- 甘肃省新能源产业招商推介会在成都举办
- 当前速递!仪征:“集中培训”提升土壤污染重点监管单位环境管理效能
- 环球热推荐:*ST凯撒收年报问询函:为何连续三年大额亏损?是否利用减值计提不当调节利润?
- 流产后能吃西瓜吗_孕妇能不能吃西瓜
- 添丁进口打一字_添丁 天天看点
- 世界观点:日本千叶县东南近海发生4.2级地震
- 木耳怎么保存才能长久 木耳的保存方法_当前短讯
- 洗洁精去油污原理得到的是什么发生什么变化_洗洁精去油污原理
- 天天快资讯丨《速度与激情10》北美首日率低于上集 全球前两日票房6900万美元
- 环球快消息!枋钟路下穿隧道通过验收 具备通行条件
- 山西发布第2号总河长令 六方面打造幸福河湖
- 千里之外有爱的陪伴和“家”的温暖
- 牛肉山药汤做法王刚?|世界观焦点
- 华峰超纤董秘回复:公司5月和4月生产经营正常
- 武汉大学东湖分校电子信息工程学院|观焦点
- 可以用矿泉水冲奶粉吗?冲奶粉的水温多少度合适?
- 【世界快播报】周末北方多地降温剧烈 湖南湖北等地暴雨如注
- 天天看热讯:2023年湖南省湘潭市成人高考在哪里报名?
X 关闭