版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖南商务职业技术学院毕业设计
目录
1引言............................................................................................................................1
1.1项目背景......................................................................................................1
1.2开发环境与工具..........................................................................................1
1.2.1JupyterNotebook介绍.....................................................................2
1.2.2Python的第三方库介绍......................................................................2
1.2.3Pycharm介绍........................................................................................2
1.2.4Python介绍..........................................................................................3
2需求分析....................................................................................................................3
2.1可行性需求分析..........................................................................................3
2.1.1技术可行性...........................................................................................3
2.1.2经济可行性...........................................................................................3
2.2关键技术分析..............................................................................................4
2.2.1可视化技术...........................................................................................4
2.2.2文件存储技术.......................................................................................4
3采集目标功能分析....................................................................................................4
3.1采集目标地址..............................................................................................4
3.2编程实现......................................................................................................6
3.3采集实现......................................................................................................6
4数据统计与分析........................................................................................................7
4.1数据准备......................................................................................................7
4.2数据展示......................................................................................................8
4.2.1依据票房统计每年电影的总票房.......................................................8
4.2.2依据票房统计近4年的电影数据.......................................................8
4.2.3根据票房情况统计大众对电影的喜爱...............................................9
4.2.4根据票房情况统计2021年前20名的电影票房............................10
4.2.5统计最受欢迎的导演.........................................................................10
5总结..........................................................................................................................11
I
湖南商务职业技术学院毕业设计
参考资料.........................................................................................................................12
II
湖南商务职业技术学院毕业设计
boxoffice的票房数据采集和分析
1引言
随着物联网、社交网络、云计算等技术不断融入我们的生活以及现有的计
算能力、存储空间、网络带宽的高速发展,中国紧跟潮流,正在空前地迈向一
个信息时代。作为全球第二的经济强国,人口高达14亿,每天产生的数据都是
令人恐怖的数据值。
现在,看电影成为人们越来越普遍的娱乐项目,平时没事的时候,人们经
常会约上三五好友去电影院看上一场酣畅淋漓的电影缓解工作还有身体的压力,
那么对于电影这个行业,大数据时代的来临,它会面临什么样的冲击。
1.1项目背景
现在足不出户就可以能实时知晓网络搜索天下的大事,但是传统的网络搜
索方式多多少存在些问题,繁琐,对于搜索者想实时获取关注的信息和东西有
些力不从心,基于python的网络爬取搜索技术大大的提高和加强了网络收集和
获取信息的准确性和效率。于是爬取网络搜索技术,简称网络爬虫搜索技术,
开始迅速的发展。由于大数据处理需求的迫切性和重要性,近年来大数据技术
对电影行业带来的影响,一步步得到了业界的肯定,也对影视内容的制作带来
了冲击。
很多朋友想了解关于我国电影票房的发展情况,和世界上不同国家电影票
房有何差距与不同。从当前的票房行情来看,当前的观影人数陡增,从经济上
来看,很多投资商愿意把钱投在电影上,那么对于投资商来说,投什么电影类
型比较赚钱。另一方面对于影迷来说,随着一大批靠“小鲜肉”所拍的电影越
来越不吃香,观影体验愈发变高,因此对影迷来说如何选择高质量电影,boxoffice
中国票房网从一开始创建这个网站就是给电影以及一些影视作品打分,然后呈
现近年来的票房热门情况,随后会将分析的高票房电影推荐给用户,这些网址
是否比用户自己还要清楚哪部电影票房最高。基于此问题,根据我所学到的pyth
on技术对电影票房网站数据进行了爬取,数据包括票房,评价,上映时间,评
分等,经过数据可视化展现出来,直观的感受到票房情况。
1.2开发环境与工具
本项目设计主要涉及电影票房信息和电影数据的采集分析和可视化统计以
1
湖南商务职业技术学院毕业设计
及电影数据的处理和可视化统计图表的呈现,涉及的技术主要包括用于python
的pandas,requests,matplotlib、PyCharm2019.1.3、JupyterNotebook、Microsoft
Excel,所用的软件主要都是基于软件python的设计和开发环境和应用工具。
1.2.1JupyterNotebook介绍
jupyter笔记本是一个互动的便携式笔记本,运行时它支持了超过40种可以
编程的语言。支持实时代码,数学公式,可视化和分布式。应用领域主要包括
数据的清洗和转换,数值分析模拟,统计分析和建模,机器智能学习等等。
1.2.2Python的第三方库介绍
Requests请求是一个使用Apache允许的开源协议,基于urllib用Python
编辑的HTTP库。它比urli更加方便,它可以节俭我们很多时间,并且它完全
满足HTTP测试的需求。最为重要的一点是,Requests支持Python3。
BeautifulSoup提供一些简单的函数用来处理导航、搜索、修改分析等功能。
简而言之,我们可以把BeautifulSoup视为一个工具框,通过分析文档提供给程
序员所必须得到的数据,因为它很简单,普通用户可也以编写一个比较完整的程
序而不需要写很多代码。BeautifulSoup自动将输入文档转换为Unicode编码,输
出文档转换为utf-8编码。在此时,你需要说明一下原始编码方式。Pandas是基
于NumPy的工具,旨在解决数据分析任务。Pandas提供了一个工具,将许多软
件库和一些标准化数据模型结合起来,并有效地处理大型数据集。并且它还提
供了许多功能和方法可以迅速和简单地处理数据。
matplotlib算是python绘图的元老级库,类似编程语言里的C语言。很多
其它的python绘图库是基于matplotlib开发的。matplotlib可用于python脚本、
pythonshell、jupyternotebook、web等。最适合来运行matplotlib绘图的工具
是jupyternotebook,这是一种交互式笔记本,在浏览器上运行代码,能直接显
示运行结果和图表。
1.2.3Pycharm介绍
Python是一个用于解释编译的应用程序,交互的面向对象的脚本语言和高
级应用层次的编程语言组合。python这是一种非常具有良好可读和解释性的交
互式编程语言:相对于java等语言更加简单,适合初学者。功能强大,有海量可
使用的模块跟库。python编程语言可能是面向对象的编程语言:这句话可能也就
意味着一种python编程语言可能是一种支持面向对象的传统设计编程风格或是
将编程代码直接封装在面向对象的一种新型编程技术。
2
湖南商务职业技术学院毕业设计
1.2.4Python介绍
Python是一个用于解释编译的应用程序,交互的面向对象的脚本语言和高
级应用层次的编程语言组合。python这是一种非常具有良好可读和解释性的交
互式编程语言:相对于java等语言更加简单,适合初学者。功能强大,有海量可
使用的模块跟库。python编程语言可能是面向对象的编程语言:这句话可能也就
意味着一种python编程语言可能是一种支持面向对象的传统设计编程风格或是
将编程代码直接封装在面向对象的一种新型编程技术。
2需求分析
2.1可行性需求分析
2.1.1技术可行性
它们在Internet搜索引擎或其他类似网站中得到广泛使用,网络信息检索
引擎功能的出现起始于当前互联网内容的爆炸性快速发展所直接带来的对互联
网内容信息检索的强烈需求,搜索引擎不断的创新和发展,人们的互联网需求
也在不断地扩大和提高,网络的信息索引已经发展成为了人们每天都要在网络
上进行的工作和内容。并且相关的源代码是开放源代码,所需的软件系统是免
费提供的,并且该软件所依赖的相关组件都是开放源代码软件,并且可以白由
引用。如果没有反爬的网络技术,则可以在不触及法律的前提下,使用python
爬网技术轻松地检索网站上所需的许多信息。
2.1.2经济可行性
相关资料均可通过网上搜索,线下调查获得,在开发过程中所需的软件系
统都可从相关站点免费获得。除了网站有一些反爬取给我们造成了一点困扰之
外,其他的整个过程几乎没有耗费物力财力。通过对中国电影网各项数据的分
析,可以为很多电影爱好者能快速选择自己所喜爱的电影,对于影迷来说,本
毕业设计可以大大减少他们对于电影筛选的时间,能够在最短时间内找到口碑
和票房双高的电影,对于一些电影投资方来说,能够精确定位国内电影群众的
喜好,为此进行相应的投资。
3
湖南商务职业技术学院毕业设计
2.2关键技术分析
2.2.1可视化技术
本项目设计主要采用Matplotlib和Pyecharts两种可视化工具。可视化技术
主要用于海量数据关联分析,因为是海量的数据,涉及广,数据信息分散并且
数据结构都不统一。所以可视化通常以人工分析为基础,形成固定分析程序和
模型的开发,使数据难以传送到应用系统进行分析和提取。
2.2.2文件存储技术
我们的数据大部分存在于文件当中,所以pandas会支持复杂的IO操作pan
das的API支持众多的文件格式如CSV、SQL、XLS、JSON、HDF5,利用python
第三方库pandas可以完成文件储存与读取,储存是利用pdtocsv文件,读取
是利用pdreadcsv文件名就能进行数据的读取。
3采集目标功能分析
3.1采集目标地址
本项目采集的是中国票房网/,需要用到搜狗
或者谷歌浏览器才能打开所需要选择的大数据网站。
首先打开网页,观察网页,选择合适的标签进行筛选,由此我们可以看到
合适的内容,我们首先就需要搜索全部电影的票房情况(如图3-1所示)。
图3-1网页界面
其次,用谷歌网页浏览器的方法检查谷歌网页的源代码分析所需的数据在
4
湖南商务职业技术学院毕业设计
哪一个数据大类里面,找到数据的相应位置,接下来就是观察源代码(如图3-2
所示)。
图3-2网页界面
然后使用谷歌网页浏览器的方法检查谷歌网页的源代码分析所需的数据在
哪一个数据大类里面,找到数据的相应位置,接下来就是观察源代码(如图3-2
所示)
通过观察网页源代码,这时我们就发现了浏览器的头部请求信息,在控制
台中找到network选项,然后任意选取一条自己感兴趣的绿线,随后点进name
一栏下面的任意一条信息,然后找到header,最后找到对应的user-agent即可。
获取头部请求信息是为了方便我们爬虫,遇到一些反爬机制的网页,可以获取us
er-agent伪装浏览器进行爬取(如图3-3所示)。
图3-3获取头部信息
5
湖南商务职业技术学院毕业设计
3.2编程实现
本项目需要导入python网络请求的requests库,网页分析的re正则模
块、json模块、BeautifulSoup库以及数据处理的pandas库。其中requests用
于网页数据请求,rejson用于对获取内容进行解析提取,pandas用于数据处理
及存储。
第一次爬取的内容就是电影名称,评分以及详情页链接,通过获得链接,
我们就可以进行详情页的内容爬取。爬取网页的开始要先获取头部请求,请求
完成后如果返回response.Status_code为200那就是正确的,还要设置一个编码格
式,然后我们需要及进行多页爬取,发现每翻一页,网址便有一个数字变换,
代码及获取内容。
在代码中定义函数“name”、“year”作为传输的参数,其次定义一个“Box_of
fice”用来存储数据,由于我们是通过对中国票房网数据库json文件的爬取,所
以我们要将json格式转换成python格式(json格式不能直接读取使用)。最
后将每一次爬取的数据存储在“Box_office”列表当中。
使用for循环来循环多个页面,控制休息间隔以及数据的存储,并且休息3
秒,防止被服务器封ip地址。只要让网址的数字变化即可。尝试进行数据的爬
取,爬取完成程序自动结束代码。
利用判断语句以及索引知识,通过观察。然后实际操作,拿到我们所需要
的内容,去掉不符合要求的内容所在行,最后我们取出的内容为“电影名称”
“上映日期”、“评分”、“类型”、“票房”存储到“Box_office”列表里然
后我们通常都以csv的格式进行存储因为爬取的数据大都是utf-8的格式经常会
出现乱码。初步收集完票房数据,文件展示的格式如下(如图3-4所示)。
图3-4票房数据文件展示图
3.3采集实现
使用beautifulsoup里面的find_all函数来进行定位。对爬取的所有十个网
页均适用的定位方法。其他xpath等方法,都不大行得通。另外需要注意的是
爬取的票房数据要进行预处理,因为票房数据中可能含有中文。
在之前的提取数据那个函数的时候,将print(data),改写成yielddata,将所
有的数据添加到一个列表之后就可以保存数据了,如图3-5所示。
6
湖南商务职业技术学院毕业设计
图3-5票房数据
4数据统计与分析
4.1数据准备
数据可视化需要用到matplotlib第三方库,我们先调用第三方库,然后开
始设置字体大小,字体类型之类,并且读取数据清洗之后的数据,方便后面的
操作,如图4-1所示。
图4-1可视化展示数据
7
湖南商务职业技术学院毕业设计
4.2数据展示
4.2.1依据票房统计每年电影的总票房
读取到数据之后,转化成Dataframe格式,并且将数据进行简单的清洗,
把数字提取出来便于我们后期的处理。将之前分组所得的数据进行mean函数运
算,得到平均值,填入plt.bar()函数当中。并且将平均分用plt.text()函数显示在
图中。设定好图名字,还有纵横轴的命名。如图4-2所示。
图4-2每年总票房数
4.2.2依据票房统计近4年的电影数据
可视化图形分为很多种,现在我们用饼图来进行可视化,这个饼图是利用
了pyecharts第三方库做的,方法有些不一样,定义一个方法,让他在类型的这
一列上进行分组并计算评分,之后用mean方法计算出不同类型电影票房的平均
分。核心代码如下所示。
8
湖南商务职业技术学院毕业设计
图4-3票房数平均分核心代码
4.2.3根据票房情况统计大众对电影的喜爱
统计大众对电影喜欢程度的核心代码如下。
图4-4大众喜欢程度核心代码
9
湖南商务职业技术学院毕业设计
人们对电影的热度是不断增加的,对电影的关注度也不断上升,并不代表
在中国电影越来越好,而是代表着国人的生活水平越来越好,也反映这代表着
国家越来越强盛,在以前,看电影是有钱人的专属,现在随着生活水平提高,
人人都有计划进入电影院看电影,如图4-5所示。
图4-5大众对电影类型的喜好程度
4.2.4根据票房情况统计2021年前20名的电影票房
通过对评分的数据分析,得出了评分最高的十部电影,有部分评分相同的
电影,通过对评论人数再进行对比,评论数多的电影优先,其中尚气与十环传
奇、流浪地球、毒液2、速度与激情9、007:无暇赴死、永恒族、失控玩家、
丛林奇航、超能敢死队、失控玩家、蜘蛛侠。
4.2.5统计最受欢迎的导演
整体来说,去年国内电影市场爆款较多,但是整体呈现阶梯状,断崖较多
大部分集中于前五名之中,大体上符合二八法则。
结果很明显,排名前20%的电影占据了整个市场80%以上的票房总量,也
就是说,去年国内市场的票房总量基本上靠着几大爆款电影撑起来的,票房分
布越来越集中绝对不是一件好事,这意味大多数的电影成绩惨淡,根本没有生
存空间,如图4-6所示。
10
湖南商务职业技术学院毕业设计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论