爬虫小程序 - 王者荣耀全皮肤爬取

Posted 460限定用户

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫小程序 - 王者荣耀全皮肤爬取相关的知识,希望对你有一定的参考价值。

爬虫小程序 - 王者荣耀全皮肤爬取

  • 代码如下所示(可直接复制使用):

import requests
import re
import os
'''
ps: 出现 <Response [405]>  多运行几次就好了
'''

def Downloed_ksin(ename, **kwargs):
    # 英雄详情页
    url = 'https://pvp.qq.com/web201605/herodetail/' + ename + '.shtml'
    html = session.get(url=url, headers=header)
    html.encoding = html.apparent_encoding
    # 获取皮肤名称
    skin_name = re.search(r'data-imgname="(.*?)">', html.text).group(1).split('|')
    infor = {}
    for num in range(len(skin_name)):
        infor[skin_name[num]] = 'https://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/' + ename + '/' + ename + '-bigskin-' + str(num+1) + '.jpg'
    # 返回 {皮肤名称:链接} 形式
    return infor

url_post = 'https://pvp.qq.com/web201605/js/herolist.json'
header = {
    "User-Agent": "Mozilla/5.0 (Windows NT 6.6; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36",
    "Referer": "https://pvp.qq.com/web201605/herolist.shtml",
}
session = requests.session()
html = session.post(url=url_post, headers=header)
print(html)
for property in html.json():
    ename = str(property["ename"])  # 获取英雄编号
    cname = property['cname']  # 获取英雄名称
    print(cname)
    skin_url = Downloed_ksin(ename)  # 得到 {皮肤名称:链接} 形式
    os.makedirs('王者荣耀全皮肤' + '/' + str(cname))  # 创建目录
    for v, k in skin_url.items():
        img = requests.get(url=k, headers=header).content
        with open('王者荣耀全皮肤' + '/' + str(cname) + '/' + v + '.jpg', 'wb+') as imgfile:
            imgfile.write(img)
  • 运行代码后,就会生成高清图片,文件生成地在代码同级目录下.


目前只有隐藏英雄艾琳没有之外,其他图片暂时都会有.

以上是关于爬虫小程序 - 王者荣耀全皮肤爬取的主要内容,如果未能解决你的问题,请参考以下文章

20行Python代码爬取王者荣耀全英雄皮肤

Python练手项目:20行爬取全王者全英雄皮肤

20行代码爬取王者荣耀全英雄皮肤!让你享受白嫖的快乐!

Python爬取王者荣耀全皮肤台词语音

Python练手项目:20行爬取全王者全英雄皮肤

python爬虫-20行代码爬取王者荣耀所有英雄图片,小白也轻轻松松