基于python大数据的电影可视化分析及电影推荐

随着信息技术和互联网技术的快速发展,利用数据采集技术实现用户感兴趣的数据收集分析成为很多互联网公司研究讨论的热门话题。通过对基于Python的大数据的电影可视化分析与电影推荐,采集进行电影热度动态变化的需求进行调查分析,发现作为研究电影热度波动变化的重要补充,豆瓣电影信息可视化分析与推荐系统对当前影视行业的电影信息政策决定起着极强的辅助作用。本文通过实现豆瓣电影信息可视化分析与推荐系统,来更好的帮助互联网公司提升政策指导性,增加对电影热度的波动研究。

本系统采用Python开发技术,结合广泛使用的MYSQL作为后台存储数据库。利用面向对象的思想,采用业界流行的MVC体系结构即模型-视图-控制器,减少各层之间的耦合,并对未来团队合作开发大型商业应用程序进行实践锻炼。系统主要实现了数据采集模块和数据分析模块及电影数据推荐模块。本文通过需求分析、可行性分析、系统总体设计、详细设计和系统开发及测试完成了整个豆瓣电影信息分析系统。本网站有效的提升了对豆瓣电影热度波动数据分析力度,拉近了电影热度信息历史数据查询手段,更好地提升电影信息的准确度和活跃度。

基于python大数据的电影可视化分析及电影推荐_第1张图片

网络爬虫是对网站数据进行采集处理的规范化技术。它采取不同的算法,设置不同的规则,定时的抓取各种网站的信息。Selenium框架是比较流行的网站测试框架,该框架经常使用模拟手工操作自动化技术中。它支持当前流行的各种浏览器,也支持各种流行的编程语言。在当下大数据分析技术中经常利用该框架结合python和火狐浏览器组合进行各种网站数据采集统计。浏览器负责处理js脚本、Selenium框架粘合python与浏览器对象,实现各种手工操作模拟化动作。网络爬出分为通用型爬虫、增量型爬虫和主题型爬虫。通用型爬虫一般是扫描网页上所有的链接,然后按照深度优先策略或者广度优先策略不断钻取所有链接网页上的相关数据。该技术常用来网站整站爬取。不合适本系统抓取电影信息的特定场景。增量型爬虫针对不同网站的更新策略进行网站数据定时采集,一般采取单体更新方案、统一更新方案和分类更新方案。该技术适用于公告等场景采集。主题网络爬虫是针对特定的网页分析其中的主要数据对象,过滤掉那些不符合预期分析数据的链接信息。该爬虫技术非常适合本系统的电影信息采集。

整个系统分为网页抓取模块、数据整理模块、数据存储模块和数据分析模块及数据推荐模块。网页抓取模块:实现对网页数据的抓取采集;数据整理模块:实现对入库的数据进行格式化规范整理,为数据入库做好基础工作;数据存储模块:实现对采集的数据进行及时入库;数据分析模块:主要用来进行对规范化处理后的数据进行可视化展示;数据推荐模块:主要用来根据协同过滤推荐算法进行电影智能推荐。

基于python大数据的电影可视化分析及电影推荐_第2张图片

基于协同过滤的推荐算法依据考虑方向的不同,分为基于用户的协同过滤推荐、基于项目的推荐和基于模型的推荐。

基于用户的系统过滤推荐,是通过分析所有用户的喜好记录,依据喜好记录对用户群进行分类,譬如某用户甲和某用户乙被分为一类用户,那么如果用户甲喜好科幻电影、动作电影、冒险电影,从而判断用户乙也喜欢科幻电影、动作电影、冒险电影,进而给用户推荐科幻电影、动作电影、冒险电影之类的电影。

基于项目的协同过滤推荐,是通过分析所有用户对电影的喜好,发现电影分类标签之间的的关联度,进而推荐关联度高的电影给当前用户。譬如通过分析所有电影收藏的记录发现,科幻电影和美国电影之间的关联度很高,那么如果某用户收藏了科幻标签的电影就会推荐美国电影相关的咨询;通过某用户收藏了美国的电影时,也会推送科幻的电影。

基于模型的协同过滤推荐,是找出一定数量的记录数据,进行学习训练形成一个推荐模型,然后再实时的给用户进行预测推送,这里主要采用各种遗传算法。

基于python大数据的电影可视化分析及电影推荐_第3张图片

豆瓣电影是通过服务端进行数据动态展示的,这样就可以通过网页上的源代码分析网页界面上看到的数据信息,不仅如此,还可以通过在采集电影网页数据的时候,动态读取URL地址。电影页面数据更新的时候,或者读取下一页面的时候,数据显示是异步加载的。这种加载数据的方法能够实时的把数据更新到页面,减少和后台的通信数据量,极大的降低了服务器的负载。所在本系统在设计时要进行数据的动态展示和分析,一定要进行数据的自动分析采集、自动规范整理和自动规范入库,进而按照目标进行动态数据分析。

基于python大数据的电影可视化分析及电影推荐_第4张图片

目 录

目 录4

第1章引 言4

1.1 研究背景4

1.2 研究状态4

1.3 研究思路4

1.4 论文结构5

第2章系统分析与开发技术5

2.1 可行性分析5

2.1.1 经济可行性6

2.1.2 技术可行性6

2.1.3 操作可行性7

2.2 需求分析7

2.3 开发技术7

2.3.1 Python概述7

2.3.2 MySQL数据库概述8

2.3.3 数据库访问技术9

2.3.4 数据采集技术9

第3章系统设计10

3.1 系统功能设计10

3.2 网页抓取设计11

3.3 数据整理设计11

3.4 数据存储设计12

3.5 数据分析设计12

3.6 数据推荐设计13

3.5 数据库设计13

第4章系统实现…14

4.1 系统设计思想14

4.2 网页抓取实现14

4.3 数据整理实现16

4.4 数据存储实现18

4.5 数据分析实现19

4.6 数据推荐实现20

第5章系统测试24

5.1 测试方法24

5.2 测试用例25

5.2.1 TOP10统计分析25

5.2.2 区域统计分析25

5.2.3 评分统计分析26

5.2.4 年份统计分析26

5.2.5 类型统计分析27

5.2.6 电影信息推荐27

结 论28

参考文献29

致 谢30

你可能感兴趣的:(Python,推荐算法,算法,python,django,echarts)