前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python变现-实现王者荣耀语音文件下载

python变现-实现王者荣耀语音文件下载

作者头像
大家一起学编程
发布2021-03-29 15:04:57
8170
发布2021-03-29 15:04:57
举报

王者荣耀语音文件下载

王者荣耀作为一款全民竞技游戏,深受广大玩家的欢迎,平时和好友玩一玩还是可以的,但是,今天我们不是来玩游戏的,我们今天是来搞素材的。

别问是什么素材,问就是英雄语音素材。

01— 材料准备

1、素材地址:

http://pvp.qq.com/story201904/index.html#/hero

2、拉一个你身边特别喜欢收集王者素材的朋友(之后我们下载下来的素材资源卖给他(这是你学会本篇文章的一个变现途径

))。

3、本文后面的资源获取。

02— 操作步骤

首先,我们需要知道我们需要的资源在什么地方。

第一:进入链接。选择英雄,英雄界面底部有英雄介绍页面底部,显示有英雄语音,可以点击进行播放试听。然后点击展开,可以查看更多的语音文件。

第二、点击展开可以查看到该英雄的全部语音 。

ok,我们成功找到我们需要的语音文件了,那接下来就是获取问题。

第三,获取主要接口:

如何获取呢?这时候我们要用到一点抓包技术,后期会给大家出一期抓包知识分享。主要使用工具fiddle。也可以使用f12.

我们通过抓取到的包,得到主要的接口。

代码语言:javascript
复制
https://pvp.qq.com/zlkdatasys/storyhero/index233.json

第四,上代码,此处省略一万字

代码语言:javascript
复制
#-*- coding:utf-8 -*-
#!/usr/bin/env python
"""   __author__: zcx   """
import requests
import os
import re

def mkdir(path):
    """判断目录是否存在,创建目录"""
    path = path.strip()
    path = path.rstrip("\\")
    isExists = os.path.exists(path)
    if not isExists:        # 如果不存在则创建目录
        os.makedirs(path)
        return True
    else:
        return False
def replace_all_blank(value):
    """去除文件名中的特殊符号"""
    result = re.sub('\W+', '', value).replace("_", '')
    return result

def hero(num):
    """调用英雄接口,读取json数据,找到音频文件"""
    url = "https://pvp.qq.com/zlkdatasys/storyhero/index"+str(num)+".json"
    headers = {
      'Host': 'pvp.qq.com',
      'Accept': 'application/json, text/plain, */*',
      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36 QBCore/4.0.1301.400 QQBrowser/9.0.2524.400 Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2875.116 Safari/537.36 NetType/WIFI MicroMessenger/7.0.5 WindowsWechat',
      'Referer': 'https://pvp.qq.com/story201904/index.html',
      'Cookie': 'PTTuserFirstTime=1598054400000; pvpqqcomrouteLine=storyweb_storyweb_storyweb_storyweb_storyweb_storyweb_storyweb; pgv_info=ssid=s5324484415; ts_refer=ADTAGpvp.story.herostory; pgv_pvid=8143118140; ts_uid=8143118140; weekloop=0-0-34-35; pgv_pvi=9171627008; pgv_si=s8926617600; isHostDate=18499; tokenParams=%3Fmedia%3D10035678%26back%3Dcururl; PTTDate=1598336040078'
    }
    response = requests.request("GET", url, headers=headers)
    x=response.json()
    mkpath = "hero\\"+x["da_ac"][0]["YXMC_8f"]+"\\"
    try:
        y=x["yy_4e"]
    except:
        print(x["da_ac"][0]["YXMC_8f"])
        return
    for i in y:
        mkdir(mkpath)
        f1=mkpath+replace_all_blank(i["yywa1_f2"])+".mp3"
        if os.path.exists(f1):
            continue
        with open(f1,"wb") as f:
            mp=requests.get("https:"+i["yyyp_9a"]).content
            f.write(mp)

def read_json():
    """读取json文件"""
    f=open("hero.json","r+",encoding="utf-8")
    x=eval(f.read())["data"]
    for i in x:
        if i=="":
            pass
        else:
            print(i["title"],i["heroid"])
            hero(i["heroid"])
if __name__ == '__main__':
    read_json()

这样,我们就完成了王者荣耀语音文件的获取,还等什么!赶快学起来吧!

公众号后台回复:王者荣耀,获取源代码,语音,图片素材文件(内含王者荣耀语音文件,源代码,免抠图,以及后期会增加王者荣耀高清壁纸)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大家一起学编程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档