教你如何用python爬取王者荣耀月收入流水线

前言

王者荣耀是最近几年包括现在一直都是最热销的手游,收益主要来源是游戏里面人物皮肤。今天就来爬取展示王者荣耀近一年收入流水线动图,看看王者荣耀有多赚钱(哈哈哈哈)

主要可视化内容:

一.App收入排行流水线

1.1.获取数据

数据来源于:七麦数据,里面数据都是通过异步加载,因此只需要找到异步链接,修改参数就可以直接获取到数据。

备注:需要cookie才可以获取数据。

请求链接

https://api.qimai.cn/pred/appMonthPred?analysis=eEcbRhNVVB9RQEB9VwpDUDRGUwVwEwEAAQcIClwODlQEAyETAQ%3D%3D

请求参数

data = {
    'device': 'iphone',
    'genre': 36,
    'month': date[d],
}

请求数据

date=['2020-01','2020-02','2020-03','2020-04','2020-05','2020-06','2020-07',
          '2020-08','2020-09','2020-10','2020-11','2020-12','2021-01','2021-02']
#app名称: 收入情况
dict={}
for d in range(0,len(date)):
    data = {
        'device': 'iphone',
        'genre': 36,
        'month': date[d],
    }
    response = requests.post(url, headers=headers, data=data)
    text = json.loads(response.text)

将数据临时保存到字典中

revenue_data = text['revenue_data']
for i in revenue_data:
   d_get = dict.get(i['app_name'])

   if d_get== None:#不存在
       #创建
       dict[i['app_name']]=[0]*len(date)

   tem_list = dict[i['app_name']]
   tem_list[d] = i['revenue']
   dict[i['app_name']] = tem_list

保存到excel

outwb = openpyxl.Workbook()
outws = outwb.create_sheet(index=0)
outws.cell(row=1, column=1, value="日期")
for i in range(0,len(date)):
    outws.cell(row=1, column=i+2, value=date[i])
###写入csv
# 通过遍历keys()来获取所有的键
count =2
for k in dict.keys() :
    outws.cell(row=count, column=1, value=k)
    ###写入值
    tem_list = dict[k]
    for j in range(0,len(tem_list)):
        outws.cell(row=count, column=j+2, value=tem_list[j])
    count = count+1
outwb.save("App收入排行_lyc.xlsx")  # 保存

1.2流水线可视化

第一种方法是:花火hanabi

第二种方法:

####开始画图
plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签
plt.rcParams['axes.unicode_minus']=False   #解决负号“-”显示为方块的问题

# 获取数据
df = pd.read_csv("App收入排行_lyc.csv",index_col=0)
# 生成动态流水线
bcr.bar_chart_race(df=df,
                    filename='App收入排行_lyc.mp4', #生成的动态条形图的文件位置
                    orientation='h', #h条形图 v柱状图
                    sort='desc', #降序,asc-升序
                    n_bars=10, #设置最多能显示的条目数
                    fixed_order=False, # 设置固定类目
                    fixed_max=False, #固定数值轴,使其不发生动态变化 True-固定
                    steps_per_period=24, #图像帧数:数值越小,越不流畅,越大,越流畅
                    period_length=20, #设置帧率,单位时间默认为500ms 即为24帧的总时间是500ms
                    end_period_pause=0,#固定值比如年份的停留时间
                    interpolate_period=False,
                    period_label={'x': .80, 'y': .5, 'ha': 'right', 'va': 'center','size':16}, #设置日期标签的时间格式
                    colors='dark12', #设置柱状图颜色颜色,通过在「_colormaps.py」文件中添加颜色信息,即可自定义配置颜色
                    title={'label': 'App收入排行_lyc','size': 18,}, #图表标题
                    bar_size=.95, #条形图高度
                    bar_textposition='inside',#条形图标签文字位置
                    bar_texttemplate='{x:,.0f}', #条形图标签文字格式
                    bar_label_font=16, #条形图标签文字大小
                    tick_label_font=16, #坐标轴标签文字大小
                    tick_template='{x:,.0f}',#坐标轴标签文字格式
                    shared_fontdict={'family': 'Microsoft YaHei','color': 'rebeccapurple'}, #全局字体属性
                    scale='linear',
                    fig=None,
                    writer=None,
                    bar_kwargs={'alpha': .7},#条形图属性,可以设置透明度,边框等
                    fig_kwargs={'figsize': (16, 10), 'dpi': 144},#figsize-设置画布大小,默认(6, 3.5),dpi-图像分辨率,默认144
                    filter_column_colors=True,#去除条形图重复颜色,True去除,默认为False
            )

这里展示的是App近一年的月收入排行前十流水线。

二.近一月日收入可视化

2.1获取数据

###王者荣耀近一个月日收入
def near_month():
    url = "https://api.qimai.cn/pred/revenue?analysis=dQ51TyxjAEd9WQBJdg5%2BTylecxV9dH1EfVpTDStzU1Z6TCwFflpiWlJXBVl3G0tERARUH0JVRlVeTQF3G1UEB1YJBQQJBgAECyQUCQ%3D%3D&appid=989673964&country=cn&sdate=2021-02-26&edate=2021-03-27"
    response = requests.post(url, headers=headers)
    text = json.loads(response.text)
    data_list = text['data']['list']
    name=[]
    value=[]
    for i in range(len(data_list)-1,-1,-1):

        name.append(todate(str(data_list[i][0])[0:-3]))
        value.append(data_list[i][1])

上图红框中是时间戳,需要转为日期,比如1616774400000转为2021-3-27

###时间戳转为字符串
def todate(timeStamp):
    timeStamp = int(timeStamp)
    timeArray = time.localtime(timeStamp)  # 将时间戳转换成元组对象
    time_str = time.strftime('%Y-%m-%d', timeArray)  # 将元组转换成对应的时间格式
    return time_str

2.2可视化展示

###拉伸图
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from pyecharts.charts import Bar
def silder(name,value):
    c = (
        Bar(init_opts=opts.InitOpts(theme=ThemeType.DARK))
            .add_xaxis(xaxis_data=name)
            .add_yaxis("日收入/美元", yaxis_data=value)
            .set_global_opts(
            title_opts=opts.TitleOpts(title="王者荣耀近一个月日收入情况"),
            datazoom_opts=[opts.DataZoomOpts(), opts.DataZoomOpts(type_="inside")],
        )
            .render("王者荣耀近一个月日收入情况.html")
    )

三.近一年月收入可视化

3.1获取数据

数据可以从csv中App收入排行_lyc.csv读取:

f = open("App收入排行_lyc.csv",encoding="utf-8")
content = f.read()
rows = content.split('\n')

name = rows[0].split(",")[1:]
dict_values = rows[1].split(",")[1:]

3.2可视化展示

c = (
    Bar(
        init_opts=opts.InitOpts(  # 初始配置项
            theme=ThemeType.MACARONS,
            animation_opts=opts.AnimationOpts(
                animation_delay=1000, animation_easing="cubicOut"  # 初始动画延迟和缓动效果
            ))
    )
        .add_xaxis(xaxis_data=name)  # x轴
        .add_yaxis(series_name="王者荣耀近一年月收入情况", yaxis_data=dict_values)  # y轴
        .set_global_opts(
        title_opts=opts.TitleOpts(title='', subtitle='',  # 标题配置和调整位置
                                  title_textstyle_opts=opts.TextStyleOpts(
                                      font_family='SimHei', font_size=25, font_weight='bold', color='red',
                                  ), pos_left="90%", pos_top="10",
                                  ),
        xaxis_opts=opts.AxisOpts(name='月份', axislabel_opts=opts.LabelOpts(rotate=45)),
        # 设置x名称和Label rotate解决标签名字过长使用
        yaxis_opts=opts.AxisOpts(name='月收入/美元'),

    )
        .render("王者荣耀近一年月收入情况.html")
)

到此这篇关于教你如何用python爬取王者荣耀月收入流水线的文章就介绍到这了,更多相关python爬取王者荣耀月流水线内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 用python爬虫爬取CSDN博主信息

    一.项目介绍 爬取网址:CSDN首页的Python.Java.前端.架构以及数据库栏目.简单分析其各自的URL不难发现,都是https://www.csdn.net/nav/+栏目名样式,这样我们就可以爬取不同栏目了. 以Python目录页为例,如下图所示: 爬取内容:每篇文章的博主信息,如博主姓名.码龄.原创数.访问量.粉丝数.获赞数.评论数.收藏数 (考虑到周排名.总排名.积分都是根据上述信息综合得到的,对后续分析没实质性的作用,这里暂不爬取.) 不想看代码的朋友可直接跳到第三部分~ 二.S

  • python 爬取豆瓣网页的示例

    python作为一种已经广泛传播且相对易学的解释型语言,现如今在各方面都有着广泛的应用.而爬虫则是其最为我们耳熟能详的应用,今天笔者就着重针对这一方面进行介绍. python 语法简要介绍 python 的基础语法大体与c语言相差不大,由于省去了c语言中的指针等较复杂的结构,所以python更被戏称为最适合初学者的语言.而在基础语法之外,python由其庞大的第三方库组成,而其中包含多种模块,而通过模块中包含的各种函数与方法能够帮助我们实现各种各样的功能. 而在python爬虫中,我们需要用到的

  • python爬取各省降水量及可视化详解

    在具体数据的选取上,我爬取的是各省份降水量实时数据 话不多说,开始实操 正文  1.爬取数据 使用python爬虫,爬取中国天气网各省份24时整点气象数据 由于降水量为动态数据,以js形式进行存储,故采用selenium方法经xpath爬取数据-ps:在进行数据爬取时,最初使用的方法是漂亮汤法(beautifulsoup)法,但当输出爬取的内容(<class = split>时,却空空如也.在源代码界面Ctrl+Shift+F搜索后也无法找到降水量,后查询得知此为动态数据,无法用该方法进行爬取

  • Python爬虫之爬取2020女团选秀数据

    一.先看结果 1.1创造营2020撑腰榜前三甲 创造营2020撑腰榜前三名分别是 希林娜依·高.陈卓璇 .郑乃馨 >>>df1[df1['排名']<=3 ][['排名','姓名','身高','体重','生日','出生地']] 排名 姓名 身高 体重 生日 出生地 0 1.0 希林娜依·高 NaN NaN 1998年07月31日 新疆 1 2.0 陈卓璇 168.0 42.0 1997年08月13日 贵州 2 3.0 郑乃馨 NaN NaN 1997年06月25日 泰国 1.2青春有

  • python爬虫之教你如何爬取地理数据

    一.shapely模块 1.shapely shapely是python中开源的针对空间几何进行处理的模块,支持点.线.面等基本几何对象类型以及相关空间操作. 2.point→Point类 curve→LineString和LinearRing类: surface→Polygon类 集合方法分别对应MultiPoint.MultiLineString.MultiPolygon 3.导入所需模块 # 导入所需模块 from shapely import geometry as geo from s

  • Python爬虫之教你利用Scrapy爬取图片

    Scrapy下载图片项目介绍 Scrapy是一个适用爬取网站数据.提取结构性数据的应用程序框架,它可以通过定制化的修改来满足不同的爬虫需求. 使用Scrapy下载图片 项目创建 首先在终端创建项目 # win4000为项目名 $ scrapy startproject win4000 该命令将创建下述项目目录. 项目预览 查看项目目录 win4000 win4000 spiders __init__.py __init__.py items.py middlewares.py pipelines

  • Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤

    思路:使用Python爬虫对腾讯疫情网站世界疫情数据进行爬取,封装成一个函数返回一个    字典数据格式的对象,写另一个方法调用该函数接收返回值,和数据库取得连接后把    数据存储到mysql数据库. 一.mysql数据库建表 CREATE TABLE world( id INT(11) NOT NULL AUTO_INCREMENT, dt DATETIME NOT NULL COMMENT '日期', c_name VARCHAR(35) DEFAULT NULL COMMENT '国家'

  • python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析

    一.环境准备 python3.8.3 pycharm 项目所需第三方包 pip install scrapy fake-useragent requests selenium virtualenv -i https://pypi.douban.com/simple 1.1 创建虚拟环境 切换到指定目录创建 virtualenv .venv 创建完记得激活虚拟环境 1.2 创建项目 scrapy startproject 项目名称 1.3 使用pycharm打开项目,将创建的虚拟环境配置到项目中来

  • 教你如何用python爬取王者荣耀月收入流水线

    前言 王者荣耀是最近几年包括现在一直都是最热销的手游,收益主要来源是游戏里面人物皮肤.今天就来爬取展示王者荣耀近一年收入流水线动图,看看王者荣耀有多赚钱(哈哈哈哈) 主要可视化内容: 一.App收入排行流水线 1.1.获取数据 数据来源于:七麦数据,里面数据都是通过异步加载,因此只需要找到异步链接,修改参数就可以直接获取到数据. 备注:需要cookie才可以获取数据. 请求链接 https://api.qimai.cn/pred/appMonthPred?analysis=eEcbRhNVVB9

  • python爬取王者荣耀全皮肤的简单实现代码

    相信现在很多人都喜欢玩王者荣耀这款手游,里面好看的皮肤令人爱不释手.那么你有没有想过把王者荣耀高清皮肤设置为壁纸,像下面这样 今天就来教大家如何利用python16行代码,实现王者荣耀全部高清皮肤的下载. 具体的操作分为两步: 1. 找到皮肤图片的地址 2. 下载图片 1. 寻找皮肤图片的地址 1. 找到英雄列表 百度"王者荣耀"进入官网 https://pvp.qq.com/.这里以Goole Chrome浏览器为例,在更多工具中选择开发者工具,或直接按F12进入调试界面,然后按F5

  • 如何用python爬取微博热搜数据并保存

    主要用到requests和bf4两个库 将获得的信息保存在d://hotsearch.txt下 import requests; import bs4 mylist=[] r = requests.get(url='https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6',timeout=10) print(r.status_code) # 获取返回状态 r.encoding=r.apparent_encoding demo

  • 教你怎么用python爬取爱奇艺热门电影

    一.首先我们要找到目标 找到目标先分析一下网页(url:https://list.iqiyi.com/www/1/-------------11-1-1-iqiyi–.html),很幸运这个只有一个网页,不需要翻页. 二.F12查看网页源代码 找到目标,分析如何获取需要的数据.找到href与电影名称 三.进行代码实现,获取想要资源. ''' 爬取爱奇艺电影与地址路径 操作步骤 1,获取到url内容 2,css选择其选择内容 3,保存自己需要数据 ''' #导入爬虫需要的包 import requ

  • 教你如何使Python爬取酷我在线音乐

    目录 前言 获取歌曲信息列表 请求参数分析 请求代码 获取歌曲下载链接 免费歌曲 付费歌曲 请求代码 后记 前言 写这篇博客的初衷是加深自己对网络请求发送和响应的理解,仅供学习使用,请勿用于非法用途!文明爬虫,从我做起.下面进入正题. 获取歌曲信息列表 在酷我的搜索框中输入关键词 aiko,回车之后可以看到所有和 aiko 相关的歌曲.打开开发者模式,在网络面板下按下 ctrl + f,搜索 二人,可以找到响应结果中包含 二人 的请求,这个请求就是用来获取歌曲信息列表的. 请求参数分析 请求的具

  • 用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例

    本文使用python的第三方模块requests爬取王者荣耀所有英雄的图片,并将图片按每个英雄为一个目录存入文件夹中,方便用作桌面壁纸 下面时具体的代码,已通过python3.6测试,可以成功运行: 对于所要爬取的网页连接可以通过王者荣耀官网找到, # -*- coding: utf-8 -*- """ Created on Wed Dec 13 13:49:52 2017 @author:KillerTwo """ import request

  • 使用python爬取抖音app视频的实例代码

    记录一下如何用python爬取app数据,本文以爬取抖音视频app为例. 编程工具:pycharm app抓包工具:mitmproxy app自动化工具:appium 运行环境:windows10 思路: 假设已经配置好我们所需要的工具 1.使用mitmproxy对手机app抓包获取我们想要的内容 2.利用appium自动化测试工具,驱动app模拟人的动作(滑动.点击等) 3.将1和2相结合达到自动化爬虫的效果 一.mitmproxy/mitmdump抓包 确保已经安装好了mitmproxy,并

  • 详解使用python爬取抖音app视频(appium可以操控手机)

    记录一下如何用python爬取app数据,本文以爬取抖音视频app为例. 编程工具:pycharm app抓包工具:mitmproxy app自动化工具:appium 运行环境:windows10 思路: 假设已经配置好我们所需要的工具 1.使用mitmproxy对手机app抓包获取我们想要的内容 2.利用appium自动化测试工具,驱动app模拟人的动作(滑动.点击等) 3.将1和2相结合达到自动化爬虫的效果 一.mitmproxy/mitmdump抓包 确保已经安装好了mitmproxy,并

  • Python通过requests模块实现抓取王者荣耀全套皮肤

    目录 开发工具 环境搭建 思路分析 代码实现 前言 今天带大家爬取王者荣耀全套皮肤,废话不多说,直接开始~ 开发工具 Python版本: 3.6.4 相关模块: requests模块: urllib模块: 以及一些Python自带的模块. 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可. 思路分析 1.打开官方王者荣耀壁纸网站 网站地址:https://pvp.qq.com/web201605/wallpaper.shtml 2.快捷键F12,调出控制台进行抓包 3.找

  • 教你用Python爬取英雄联盟皮肤原画

    一.推理原理 1.先去<英雄联盟>官网找到英雄及皮肤图片的网址: http://lol.qq.com/data/info-heros.shtml 2.从上面网址可以看到所有英雄都在,按下F12查看源代码,发现英雄及皮肤图片并没有直接给出,而是隐藏在JS文件中.这时候需要点开Network,找到js窗口,刷新网页,就看到一个champion.js的选项,点击可以看到一个字典--里面就包含了所有英雄的名字(英文)以及对应的编号. 3.但是只有英雄的名字(英文)以及对应的编号并不能找到图片地址,于是

随机推荐