基于Python爬虫技术的网页数据抓取与分析研究
2017-12-07熊畅
熊畅
摘要:基于Python爬虫技术简单易用的特点,利用python语言编写爬虫程序对国家广播电视总局电视剧电子政务平台的电视剧备案数据进行了爬取。并对爬取的电视剧备案数据进行了统计分析,得出相关结论。
关键词:Python;爬虫;数据分析
中图分类号:TP311.11 文献标识码:A 文章编号:1007-9416(2017)09-0035-02
1 爬虫技术简介
网络爬虫,是一种通过既定规则,自动地抓取网页信息的计算机程序。爬虫的目地在于将目标网页数据下载至本地,以便进行后续的数据分析。爬虫技术的兴起源于海量网络数据的可用性,通过爬虫技术,我们能够较为容易的获取网络数据,并通过对数据的分析,得出有价值的结论。
Python语言简单易用,现成的爬虫框架和工具包降低了使用门槛,具体使用时配合正则表达式的运用,使得数据抓取工作变得生动有趣。
2 案例分析
2.1 网页说明
目标数据是历年来的全国电视剧拍摄备案数据。数据源于国家广播电视总局电视剧电子政务平台的公开信息,如图1所示,具体网址URL:“http://dsj.sarft.gov.cn/tims/site/views/applications.shanty?appName=note”。
我们需要爬取历年来每个月的备案公示信息列表数据,如图2,并进行汇总和分析。
2.2 爬虫程序设计并实现
首先,我们用BeautifulSoup解析器来解析URL的文本信息,分析网页HTML文本和页面规则后,制定以下步骤来抓取目标数据。
①抓取首页码和尾页码后,循环抓取列表页信息;
②通过”th”标签来提取表头信息;
③循环提取行信息;
④将每一行的信息加入年份和月份属性,将所提取的信息组合成DataFrame格式。
用Python编程实现上述步骤,最终的结果是抓取并形成了一个8884行、6列的二维表,包含了从2009年3月份至2017年7月份的电视剧拍摄备案数据,如图3和图4所示。
2.3 数据分析
根据上述数据,我们可以运用Python的统计方法,对数据进行简单的统计和分析。
2.3.1 统计每年的拍摄数量
用groupby方法统计每年的电视剧数量并作条形图。从数据上可以看出,2010年至2016年,我国电视剧备案数量整体上看呈上升趋势,如图5,从2010年的962部上升至2016年的1217部。
2.3.2 统计各地区的备案情况
同样的,用groupby方法统计各地区的备案数量。如图6所示,2009年3月份至2017年7月份,北京、浙江和上海这三个地区的电视备案数量排名前三,具体数量分别为2329部、1214部和938部。而排名倒数前三的地区分别是青海、西藏和甘肃,具体数量分别为4部、13部和16部。
2.3.3 统计题材分布
如图7所示,从题材上来看,备案数量排名前三的题材分别是当代都市、近代革命和近代传奇,这三个题材的备案数量分别为3396部、1130部和709部。
3 结语
运用Python爬虫技术能够顺利的抓取所需数据。通过对数据的整理和分析,可以认为:从总量上来看,我国电视部备案数量整体呈稳步上升趋势;从地区分布上看,备案数量与地区经济的发达程度正相关,由于电视剧的拍摄和制作需要资本投入,发达地区拥有资本和人才优势,能够大批量的拍摄和制作电视剧;最后,从备案题材来看,当代都市题材的数量处于绝对领先地位,说明反映时代特征的当代题材剧最受资本和制作方的亲睐。
参考文献
[1]Yves Hilpisch.Python金融大数据分析[M].北京:人民邮电出版社,2015.
[2]吳剑兰.基于Python的新浪微博爬虫研究[J].无线互联科技,2015,(6):93-94.endprint