本文是爬虫及可视化的练习项目,目标是爬取猫眼票房的全部数据并做可视化分析。
1、获取url
我们先打开猫眼票房http://piaofang.maoyan.com/dashboard?date=2019-10-22 ,查看当日票房信息,
但是在通过xpath对该url进行解析时发现获取不到数据。
于是按F12打开Chrome DevTool,按照如下步骤抓包


再打开获取到的url: http://pf.maoyan.com/second-box?beginDate=20191022

可以看到是json数据,并且url是以日期结尾的,也就是每日的票房数据都保存在对应日期的url中,这样我们就可以通过构造url来爬取每天的票房数据。
2、开始采集
先创建了两个函数,
一个用来获取制定年份的所有日期,例如,传入2019,返回['20190101', '20190102'...'20191230', '20191231']。
当然也可以传入多个年份的列表,如[2016,2017,2018'],返回 ['20160101','20160102', ...'20170101',...'20180101',...'20181231']
这里没有使用任何库,用笨方法手动构造了全年的日期列表。
def get_calendar(years):
"""
传入年份(可用list传入多个年份),得到年份中的所有日期
:param years: 可传入list、int、str
:return: 年份中全部日期的list,日期格式: "2019-09-30"
"""
mmdd = []
# 判断传入参数的格式,如果是list则排序,如果是str或int则转为list
if isinstance(years, list):
years.sort()
else:
years = [int(years)]
# 先为每个月都加

本文介绍如何从零基础进行电影数据的爬取和分析。通过爬取猫眼票房的JSON数据,利用Python进行数据采集,并将数据存储到MySQL或Excel。文章详细讲解了获取URL、构建日期列表、解析数据以及存储到数据库的全过程,同时指出代码中存在逻辑错误,邀请读者找出问题。最后,提到下一步将进行数据可视化。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



