IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 艺恩票房榜—json数据获取—保存在本地 -> 正文阅读

[网络协议]艺恩票房榜—json数据获取—保存在本地

学习记录:

哈喽,没几天就要要开学咯,嘿嘿~~

一、目标网址分析

艺恩娱数?, 进入网址,现在想要对这些内容进行获取,并保存在本地。

?我们右键网页源代码:

?发现是上图这样。。。那就先来到下图,看能不能找到数据:

?刷新一下找找,在这里就我们想要的数据了。

?继续,我们在返回给我们的数据复制出来看看:

?下面json数据:

?再就是,post请求和参数的添加

?参数:

?好了,下面是代码部分:

二、代码实现

"""
2022年

CSDN:抄代码抄错的小牛马
"""
import json
import requests
import pandas as pd

url = 'https://ys.endata.cn/enlib-api/api/home/getrank_mainland.do'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36',
    'Referer': 'https://star.endata.com.cn/Star/Search',
    'Cookie': 'gr_user_id=e02d77a6-c15e-4077-8d85-4e171ed25f7b; a92bf18a95cb2b3c_gr_session_id=68a47e59-b9c5-4c7c-a3a6-c0274bc4f477; a92bf18a95cb2b3c_gr_session_id_68a47e59-b9c5-4c7c-a3a6-c0274bc4f477=true; Hm_lvt_3dd500c95a0505fd002b19136f7a4543=1644111159,1644111330,1644112175,1644112389; Hm_lpvt_3dd500c95a0505fd002b19136f7a4543=1644112474'
}
data = {
    'r': 0.7693057458600729,
    'top': 100,
    'type': 0
}

resp = requests.post(url=url, headers=headers, data=data).text

打印数据看看: 上面data参数中的 top 是票房前多少的排名,可以修改自己想要的榜单数据。

?现在就可以去处理数据了:反序列化把json数据转为Python对象,并取到我们想要的数据所处在的列表

dict_list = json.loads(resp)  
mov_list = dict_list['data']['table0']

?再,提取数据:

name = [mov_list["MovieName"] for mov_list in mov_list]
print(name)
time = [mov_list["ReleaseTime"] for mov_list in mov_list]
max_price = [mov_list["BoxOffice"] for mov_list in mov_list]
avg_people = [mov_list["AvgAudienceCount"] for mov_list in mov_list]
avg_price = [mov_list["AvgBoxOffice"] for mov_list in mov_list]

每次提取后,可以打印出来检查看看:

?现在,就可以来保存数据了:


down_load = pd.DataFrame({'电影名称': name, '上映时将': time, '累计票房(万)': max_price,
                          '场均人次': avg_people, '平均票价': avg_price})
down_load.to_csv('d:/艺恩票房.csv')

总代码:

"""
2022年

CSDN:抄代码抄错的小牛马
"""
import json
import requests
import pandas as pd

url = 'https://ys.endata.cn/enlib-api/api/home/getrank_mainland.do'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36',
    'Referer': 'https://star.endata.com.cn/Star/Search',
}

data = {
    'r': 0.7693057458600729,
    'top': 100,
    'type': 0
}
resp = requests.post(url=url, headers=headers, data=data).text
dict_list = json.loads(resp)
mov_list = dict_list['data']['table0']

name = [mov_list["MovieName"] for mov_list in mov_list]
time = [mov_list["ReleaseTime"] for mov_list in mov_list]
max_price = [mov_list["BoxOffice"] for mov_list in mov_list]
avg_people = [mov_list["AvgAudienceCount"] for mov_list in mov_list]
avg_price = [mov_list["AvgBoxOffice"] for mov_list in mov_list]

down_load = pd.DataFrame({'电影名称': name, '上映时将': time, '累计票房(万)': max_price,
                          '场均人次': avg_people, '平均票价': avg_price})
down_load.to_csv('d:/艺恩票房.csv')

运行看看:

?

哦可~~~


?

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-02-07 14:01:51  更:2022-02-07 14:02:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年10日历 -2024/10/5 11:14:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码