【番剧推荐系统设计】基于 Flask 与 MySQL 实现番剧推荐系统(Python代码)(2)

推荐系统的实现

一、实验简介

1.1 实验介绍

本节实验我们将在上一节实验的基础上实现推荐系统的核心部分。

1.2 知识点

本节实验中我们将学习并实践下列知识点:

  • 模板引擎的使用
  • 请求的处理
  • 复杂查询的使用
  • 简单的推荐算法

二、基础知识

  • 路由: Flask 支持用 装饰器把一个函数绑定到对应的 URL 上,从而实现路由功能。

如下图代码所示,实现了 和 两个地址的访问请求处理:

二、简单推荐算法实现

本节实验中我们实现的推荐算法比较简单,基本思路:

  1. 找到用户所喜爱的番剧;
  2. 分析这些番剧的类别(一个番剧可能有多个标签),进行统计排序;
  3. 找到前三个标签,从数据库中找到同时具有这三个标签的番剧(喜欢的不能再推荐);
  4. 将番剧相关信息(name,brief)进行展示。
    SQL 数据库操作的实现上述的思路1 和 思路2:

其中下图所划去的一行内容对应思路1,即从 表中查询用户和喜欢的番剧数据对:

剩下的两个 操作由以下代码共同完成:

上图中的红线部分较重要,其中第二个红线部分用了 Python 的 数据结构以取交集。 是喜欢番剧的列表, 函数是随机取一个。 循环中保证不取与喜欢的重复的,这里还考虑一个问题,就是你得到的交集是喜欢集合的子集,如果不加判断将会导致死循环,所以这种情况拿出来判断,如果出现这种情况就从用户最喜欢类别中拿出一个番剧。

完整代码实现在 文件中,代码如下:

四、推荐系统的实现及部署

4.1 app.py 的实现

系统运行的启动我们使用 Flask 实现在 文件中,详细代码:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年4月20日
下一篇 2019年4月20日

相关推荐