学妹期末大作业
基于Python的十年(2009年~2018年)电影票房前25位分析
根据URL“http://www.cbooo.cn” 通过代码爬取2009-2018每年票房排名前25的影片名称、类型、总票房(万)、平均票价、场均人次及国家及地区的信息,并按照以下要求完成分析。
1. 按年统计
1) 不同类型电影的平均票房
2) 不同国家及地区电影在前25排名中的占比
2. 分析十年间
1) 每年票房冠军的票房走势,并找出十年票房总冠军
2) 不同类型的票房分冠军
3) 同一类型电影平均票房走势,分别找出上升、下降最厉害的两种类型
4) 同一地区在前25排名中占比的变化趋势,分别找出占比上升、下降最厉害的两个地区
5) 探究是否有一种或多种类型的电影在十年间票房震荡非常厉害
3. 分析总票房和平均票价、场均人次、排片场数之间的关系。
4.撰写word文档完成本分析题,所有的结论和分析都需要配图或表加以支撑。并将十年间共250部电影名称作成词云烘托主题。
大作业分析
1.环境,建议使用anaconda3(环境集成,不用再去安装依赖包,之类的)
官网地址:https://www.anaconda.com/download/
2.分为爬取数据和分析两个部分
下面直接上代码
爬虫部分,爬取数据并存放到data.csv中
#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests
import time
import re
import csv
from bs4 import BeautifulSoup
#设置URL固定部分
url='http://www.cbooo.cn/year?year='
#设置请求头部信息
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'
}
#循环抓取列表页信息
for year in range(2009,2019):
if year == 2009:
year=str(year)
a=(url+year)
r=requests.get(url=a,headers=headers)
html=r.content
else:
year=str(year)
a=(url+year)
r=requests.get(url=a,headers=headers)
html2=r.content
html = html + html2
#每次间隔0.5秒
time