HTML应用指南:利用GET请求获取猫眼电影日票房信息——以哪吒2为例

news2025/3/23 2:47:02

2025年春节档期,国产动画电影《哪吒之魔童闹海》(以下简称《哪吒2》)以颠覆性的叙事风格与工业化制作水准震撼登场,不仅刷新了中国动画电影的票房纪录,更成为全球影史现象级作品。影片凭借春节档期的爆发式开局、持续50天的“长尾效应”以及对全年龄段观众的广泛吸引力,创造了票房奇迹,以超150亿总票房刷新国产动画纪录,并且有望冲击全球影史前五,此次票房表现不仅标志着国产动画电影工业化进程的里程碑,更折射出中国电影市场消费结构的深刻变革:从“低幼向”到“全年龄化”的内容升级、从“本土市场依赖”到“全球影响力”的探索,以及从“单片成功”到“IP宇宙构建”的战略转型。

本篇文章基于影片上映期间(2025年1月29日至3月31日,包含猫眼预测数据)的 日综合票房数据,对2025年春节档期上映的国产动画电影《哪吒之魔童闹海》进行了深度剖析,全面探究了影片票房趋势背后的数据特征、用户画像数据特征以及票房区域分布情况等多方面特性。

我们基于猫眼官网的票房数据进行分析:票房明细

我们第一步先找到门店数据的存储位置,然后看3个关键部分标头、负载、 预览;

标头:通常包括URL的连接,也就是目标资源的位置;

负载:对于GET请求:负载通常包含了传递的参数,有些网页负载可能为空,或者没有负载,因为所有参数都通过URL传递;

预览:指的是对响应内容的快速查看或摘要显示,可以帮助用户快速了解返回的数据结构或内容片段;

第一步:我们先找到对应数据存储位置,获取所有电影票房信息列表;

第二步:利用GET请求获取当前电影日票房列表,并根据标签进行保存,另存为csv;

完整代码#运行环境 Python 3.11

import requests
import csv


def fetch_movie_data():
    url = "https://piaofang.maoyan.com/i/api/movie/getBoxShow?movieId=1294273&boxLevel=1&WuKongReady=h5"

    try:
        # 发送GET请求
        response = requests.get(url)
        response.raise_for_status()  # 检查请求是否成功

        # 解析JSON数据
        data = response.json()

        # 提取所有的showDate和boxDesc
        results = []
        if 'data' in data and 'boxDatas' in data['data']:
            for item in data['data']['boxDatas']:
                for entry in item:  # 遍历每个条目
                    show_date = entry.get("showDate")
                    box_desc = entry.get("boxDesc")
                    results.append((show_date, box_desc))

        return results

    except Exception as e:
        print(f"发生错误: {e}")
        return []


def save_to_csv(data, filename='movie_data.csv'):
    # 保存数据到CSV文件
    with open(filename, mode='w', newline='', encoding='utf-8') as file:
        writer = csv.writer(file)
        writer.writerow(['showDate', 'boxDesc'])  # 写入表头
        writer.writerows(data)  # 写入数据


if __name__ == "__main__":
    results = fetch_movie_data()

    if results:
        print("所有日期和综合票房:")
        for show_date, box_desc in results:
            print(f"日期 (showDate): {show_date}, 综合票房 (boxDesc): {box_desc}")

        # 保存到CSV文件
        save_to_csv(results)
        print("数据已保存到 movie_data.csv")
    else:
        print("未能提取数据。")

tips:1、如果需要调整为其他电影的数据,只需要替换电影的movie_id即可,2、如果要增加其他数据类型的话可以自行增加关键词,这里脚本运行结束会生成一个movie_data.csv的文件,再把数据进行可视化分析;

我们来分析票房背后的数据特征:

  • 春节档期爆发(1月29日-2月9日):首日票房4.88亿,随后持续攀升至2月4日(大年初四)的峰值 8.67亿,刷新国产动画单日票房纪录。春节假期(1月31日-2月5日)贡献75.3%的总票房,日均票房超7亿,远超《流浪地球2》《唐探1900》等同档影片。
  • 节后波动与长尾效应(2月10日-3月30日):节后票房经历多轮波动,情人节(2月14日)因情侣观影需求短暂回升至5.8亿,但随后因《疾速追杀4》等新片冲击加速下滑。即便如此,影片在上映46天后(3月15日)仍保持7,309万的日票房,长尾效应显著,远超《战狼2》《流浪地球2》等影片的衰减速度。至3月30日密钥到期,日票房仍达24万,成为国产动画长尾表现的标杆。
  • 影片票房表现与周末效应高度关联,周末(周六、周日)的票房贡献显著高于工作日,成为票房增长的关键节点。从上映至下映的52天周期中,周末日均票房达 3.2亿,是工作日(0.8亿)的 4倍,且多个周末出现票房峰值,凸显观众观影习惯与影院排片策略的双重影响,周末与节假日是家庭观影、朋友聚会的集中时段,尤其适合动画电影的合家欢属性。

接下来,我们来看一下上映五十天后的累计票房,数据尺度可以到市级,这里我们通过以市级尺度进行可视化,获取的逻辑一致,找到数据存储位置,利用get请求获取html,并检索关键词"name"、"sumboxinfo",因为一页有30条的输出限制,我们先观察翻页的特征,可以看到offset值每次是发生变化的,每次递增值为30,同时我们把页面拉到底部,可以看到最大值为1050,所以我们使用for offset in range(0, 1051, 30)函数来生成从0到1050的offset值,每次递增30,使用循环来发送多个请求并将结果存储到CSV文件中;

第三步:利用GET请求获取当前电影在各市的票房情况列表,并根据标签进行保存,另存为csv;

完整代码#运行环境 Python 3.11

import requests
import csv


def fetch_movie_data(offset):
    url = "https://piaofang.maoyan.com/i/api/movie/boxsum/getBoxsumList"

    # 定义负载参数
    params = {
        'date': '2025-03-20',
        'movieId': 1294273,
        'boxLevel': 4,
        'sortField': 'box',
        'isAllBox': 'false',
        'boxScope': 0,
        'limit': 30,
        'offset': offset,
        'WuKongReady': 'h5'
    }

    try:
        # 发送GET请求,带上参数
        response = requests.get(url, params=params)
        response.raise_for_status()  # 检查请求是否成功

        # 解析JSON数据
        data = response.json()

        # 提取所有的sumBoxInfo和name
        results = []
        if 'data' in data and 'data' in data['data'] and 'detailList' in data['data']['data']:
            for item in data['data']['data']['detailList']:
                name = item.get("name")  # 获取名称
                sum_box_info = item.get("sumBoxInfo")  # 获取综合票房信息
                results.append((name, sum_box_info))

        return results

    except Exception as e:
        print(f"发生错误: {e}")
        return []


def save_to_csv(data, filename='movie_data.csv'):
    # 保存数据到CSV文件
    with open(filename, mode='w', newline='', encoding='utf-8') as file:
        writer = csv.writer(file)
        writer.writerow(['Name', 'Sum Box Info'])  # 写入表头
        writer.writerows(data)  # 写入数据


if __name__ == "__main__":
    all_results = []

    # 从0开始,offset每次增加30,直到最大为1050
    for offset in range(0, 1051, 30):
        print(f"Fetching data with offset: {offset}")
        results = fetch_movie_data(offset)
        all_results.extend(results)  # 将结果添加到总结果中

    if all_results:
        print("所有名称和综合票房:")
        for name, sum_box_info in all_results:
            print(f"名称: {name}, 综合票房: {sum_box_info}")

        # 保存到CSV文件
        save_to_csv(all_results)
        print("数据已保存到 movie_data.csv")
    else:
        print("未能提取数据。")

这里脚本运行结束会生成一个movie_data.csv的文件,我们把获取的各省市票房数据进行可视化,其中,港澳台地区没有数据;

高票房区域:东部沿海与部分中部地区

在票房贡献方面,东部沿海地区无疑是《哪吒之魔童闹海》的最大市场。广东省以16.57亿的票房成绩位居榜首,江苏省和浙江省分别以9.4亿和9.06亿紧随其后。上海作为直辖市,也取得了4.71亿的优异成绩。这些地区的共同特点是人口密集、经济发达且文化娱乐活动丰富,为电影提供了庞大的潜在观众群体。此外,河南和湖北两省的表现也不容小觑,分别为9.06亿和6.12亿,显示了中部地区对国产动画电影的强烈需求。

中等票房区域:华北及部分西部地区

华北地区的北京和天津分别取得了5.15亿和1.92亿的票房成绩,其中北京作为文化中心,观影氛围浓厚,票房表现突出。河北、山西等地虽然票房相对较低,但仍然保持了一定水平,这与当地的人口基数和经济发展状况密切相关。与此同时,西部地区的四川以9.56亿的票房成为该区域的领头羊,显示出强大的消费能力和对高质量内容的需求。重庆、陕西等地也有不错的表现,但整体上西部地区的票房贡献相对较低。

低票房区域:东北及边远地区

相比之下,东北三省以及一些边远地区如内蒙古、西藏、青海等地的票房表现较为平淡。辽宁、吉林、黑龙江的票房分别为4.02亿、1.78亿和1.84亿,反映出这些地区由于人口外流和影院数量较少等原因,导致票房增长受限。而西藏、青海等边远地区则因地理位置偏远、人口稀少等因素,票房贡献最低,仅为0.14579亿和0.52899亿。

影响因素分析

从上述票房分布来看,《哪吒之魔童闹海》的成功主要得益于几大关键因素:首先,高票房区域通常具备较大的人口基数和较高的居民消费能力,使得这些地区能够为电影提供充足的观众来源;其次,影院的数量和分布也是影响票房的重要因素,尤其是在人口密集的城市和地区,更多的影院意味着更高的排片量和更便捷的观影条件;最后,文化氛围和社会习惯同样不可忽视,东部沿海地区普遍具有较强的观影习惯和对国产动画电影的支持力度,这也是促成高票房的重要原因之一。

我们再来看看《哪吒之魔童闹海》的用户画像,看看可以得到哪些结论;

1. 性别分布

  • 女性观众(64.7%)
    影片对女性观众的吸引力可能源于其情感内核与角色塑造。电影围绕哪吒的成长与自我救赎展开,探讨家庭、责任、自我认同等主题,尤其是亲情互动与情感冲突的细腻刻画,容易引发女性观众的情感共鸣67。此外,敖丙与哪吒的“双男主”设定及人物关系的复杂性,也可能吸引女性群体的关注;

  • 男性观众(35.3%)
    尽管比例较低,但影片中的动作场面、特效表现以及“我命由我不由天”的热血精神,仍吸引了部分男性观众。尤其是影片的魔幻战斗场景和视觉奇观,展现了高水准的动画技术,符合男性观众对动作片的偏好;

2. 三四线城市成春节档票房主力

  • 春节人口回流效应:大量在一线城市工作的年轻人在春节期间返乡,带动了四线城市的消费热潮。这部分人群已形成稳定的观影习惯,返乡后成为四线城市票房的主力军。例如,2025年春节档期间,三四线城市的票房悬殊度(春节档票房占比与平日对比)显著为正,而一线城市则因人口外流票房下降明显;

  • 影院数量激增:2014-2021年,四线城市影院数量增长170.5%,覆盖率达全国影院的33.5%。乡镇影院的普及(如横店影视70%的影院布局在三四五线城市)为观影提供了基础设施;

  • 政策补贴与成本优势:政府对乡镇影院建设提供资金补贴(如广东省每厅补贴40万元),且三四线城市影院运营成本(租金、人力等)显著低于一线城市,吸引院线下沉布局;

  • 票价溢价现象:春节期间四线城市因需求激增导致票价上涨。例如,河南信阳春节档票价较平日上涨87.9%,甚至超过北京票价,但观众仍愿为有限的娱乐选择买单;

  • 消费能力提升:三四线城市居民收入增长、年轻人才回流,带动文化消费升级。例如,2025年义乌、徐州等下沉市场的线下消费人流量达到一线城市的4-5倍。

文章仅用于分享个人学习成果与个人存档之用,分享知识,如有侵权,请联系作者进行删除。所有信息均基于作者的个人理解和经验,不代表任何官方立场或权威解读。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2319901.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

荣耀手机卸载应用商店、快应用中心等系统自带的

1.下载abd ADB Download - Get the latest version of ADB and fastboot 2.手机打开开发者选项 3.手机接电脑打开USB调试 4.下载MT管理器查看系统包名 D:\1.LFD\ADB\platform-tools-latest-windows\platform-tools>adb shell adb.exe: no devices/emulators found 这边是…

苍穹外卖学习笔记

整体概述 1).用户层 本项目中在构建系统管理后台的前端页面,我们会用到H5、Vue.js、ElementUI、apache echarts(展示图表)等技术。而在构建移动端应用时,我们会使用到微信小程序 2).网关层 Nginx是一个服务器,主要用来作为Http服务器&…

每日一题力扣2974.最小数字游戏c++

2974. 最小数字游戏 - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<int> numberGame(vector<int>& nums) {vector<int> arr(nums.size());sort(nums.begin(),nums.end());for(size_t i0;i<nums.size();i2){arr[i]nums[i1]…

软考中级-软件设计师 准备

软考中级-软件设计师 准备 一、软考相关1.1、考试时间1.2、考试时长1.3、题型和分值&#xff1a; 二、软考备考2.1、相关书籍2.2、推荐课程&#xff1a;B站up主zst_20012.3、学习路线 一、软考相关 1.1、考试时间 一年有两次软考&#xff0c;一般是五月末和十一月的中旬 以下…

EasyRTC嵌入式音视频通信SDK:WebRTC技术下的硬件与软件协同演进,开启通信新时代

在当今数字化时代&#xff0c;智能设备的普及和人们对实时通信需求的不断增长&#xff0c;推动了嵌入式音视频通信技术的快速发。EasyRTC嵌入式音视频通信SDK凭借其独特的技术特点和应用优势&#xff0c;在嵌入式设备和多平台实时通信领域脱颖而出。 1、轻量级设计与高性能 Ea…

Lineageos 22.1(Android 15)实现负一屏

一、前言 方案是参考的这位大佬的&#xff0c;大家可以去付费订阅支持一波。我大概理一下Android15的修改。 大佬的方案代码 二、Android15适配调整 1.bp调整&#xff0c;加入aidl引入&#xff0c;这样make之后就可以索引代码了 filegroup {name: "launcher-src"…

《深度学习》——YOLOv3详解

文章目录 YOLOv3简介YOLOv3核心原理YOLOv3改进YOLOv3网络结构 YOLOv3简介 YOLOv3&#xff08;You Only Look Once, version 3&#xff09;是一种先进的实时目标检测算法&#xff0c;由 Joseph Redmon 和 Ali Farhadi 开发。它在目标检测领域表现出色&#xff0c;具有速度快、精…

【设计模式】三十一、状态模式

系列文章|源码 https://github.com/tyronczt/design-mode-learn 文章目录 系列文章|源码一、模式核心思想二、模式结构三、Java代码示例&#xff1a;订单状态管理1. 定义状态接口2. 实现具体状态类3. 上下文类&#xff08;Context&#xff09;4. 客户端调用5. 运行截图 四、状…

vue 获取当前时间并自动刷新

新增需求&#xff0c;需要在大屏的右上角展示当前时间&#xff0c;并实时按秒刷新&#xff0c;通过通义千问搜索关键js代码后&#xff0c;整理出如下代码。 【效果图】 【HTML】 <div class"time-wrap">{{ formattedDateTime }}<span> {{ weekTime }}&…

C 语 言 --- 扫 雷 游 戏(初 阶 版)

C 语 言 --- 扫 雷 游 戏 初 阶 版 代 码 全 貌 与 功 能 介 绍扫雷游戏的功能说明游 戏 效 果 展 示游 戏 代 码 详 解game.htest.cgame.c 总结 &#x1f4bb;作 者 简 介&#xff1a;曾 与 你 一 样 迷 茫&#xff0c;现 以 经 验 助 你 入 门 C 语 言 &#x1f4a1;个 人 主…

WebDeveloper靶机详解

一、主机发现 arp-scan -l靶机ip为192.168.55.163 二、端口扫描、目录枚举、漏洞扫描、指纹识别 2.1端口扫描 nmap --min-rate 10000 -p- 192.168.55.163发现并无特殊端口开放 扫描一下UDP端口 nmap -sU --min-rate 10000 -p- 192.168.55.163没有扫描到UDP端口 2.2目录枚…

来源于胡椒的亚甲二氧桥CYP450-文献精读119

Piper nigrum CYP719A37 Catalyzes the Decisive Methylenedioxy Bridge Formation in Piperine Biosynthesis 胡椒 (Piper nigrum) CYP719A37 催化胡椒碱生物合成中关键的亚甲二氧桥形成 摘要 胡椒 (Piper nigrum) 是世界上最受欢迎的香料之一。其主要辛辣成分胡椒碱 (piper…

梦回杭州...

她对我说&#xff0c;烟雨中的西湖更别有情趣&#xff0c;我也怀着对‘人间天堂’的憧憬踏上了向往之旅。第一次亲密接触没有感觉中那么好&#xff0c;现在想起来是那时的人和心情都没能安静下来&#xff0c;去慢慢品味它的美。 六下杭州&#xff0c;亲历每一片风景&#xff0c…

NAT 实验:多私网环境下 NAPT、Easy IP 配置及 FTP 服务公网映射

NAT基本概念 定义&#xff1a;网络地址转换&#xff08;Network Address Translation&#xff0c;NAT&#xff09;是一种将私有&#xff08;保留&#xff09;地址转化为合法公网 IP 地址的转换技术&#xff0c;它被广泛应用于各种类型 Internet 接入方式和各种类型的网络中。作…

YOLO数据集分割训练集、测试集和验证集

记录一下自己的分割代码。 注意&#xff1a; 这是在windows环境&#xff0c;请Linux的同学们注意。标签为txt&#xff0c;图像为jpg&#xff0c;其他的我没试过喔。 训练集、验证集、测试集&#xff08;7:2:1&#xff09; import os import shutil import random from tqdm…

Debug-037-table列表勾选回显方案

效果展示&#xff1a; 图1 图2 最近实现一个支持勾选的el-table可以回显之前勾选项的功能。实现了一个“编辑”的功能&#xff1a; 在图1中的列表中有三行数据&#xff0c;当点击“更换设备”按钮时&#xff0c;打开抽屉显示el-table组件如图2所示&#xff0c;可以直接回显勾选…

人脸表情识别系统分享(基于深度学习+OpenCV+PyQt5)

最近终于把毕业大论文忙完了&#xff0c;众所周知硕士大论文需要有三个工作点&#xff0c;表情识别领域的第三个工作点一般是做一个表情识别系统出来&#xff0c;如下图所示。 这里分享一下这个表情识别系统&#xff1a; 采用 深度学习OpenCVPyQt5 构建&#xff0c;主要功能包…

AtCoder - arc086_d Shift and Decrement分析与实现

分析与思路 可以把操作流程表示成下图 以进行四次除法操作为例&#xff1a; 这里有一个关键点&#xff1a;对于每个p_i (0< i <x-1) &#xff0c;x是除法操作的次数&#xff0c;如果p_i>2&#xff0c;可以将2个p_i的减法操作去掉&#xff0c;在p_(i1)中增加一个减法…

tcping 命令的使用,ping IP 和端口

1. ‌Windows系统安装‌ ‌下载tcping工具‌&#xff1a;根据系统位数&#xff08;32位或64位&#xff09;下载对应的tcping.exe文件。‌安装步骤‌&#xff1a; 将下载的tcping.exe文件复制到C:\Windows\System32目录下。如果下载的是64位版本&#xff0c;需将文件名改为tcpi…

天地图InfoWindow插入React自定义组件

截至2025年03月21日天地图的Marker不支持添加Label; 同时Label和Icon是不支持自定义HTMLElement只支持String&#xff1b;目前只有InfoWindow支持自定义HTMLElement; 效果图 React核心api import ReactDOM from react-dom/client const content document.createElement(div);…