python爬取王者榮耀皮膚

柒灬發表於2020-10-06

程式碼

import requests
import json
import os
import time

start = time.time()    #程式開始時間
url=requests.get('http://pvp.qq.com/web201605/js/herolist.json').content
jsonFile=json.loads(url)   #提取json #print(jsonFile)
x = 0           #用於記錄下載的圖片張數
#目錄不存在則建立
hero_dir='D:\skin\\'
if not os.path.exists(hero_dir):
    os.mkdir(hero_dir)
for m in range(len(jsonFile)):
    ename = jsonFile[m]['ename']                      #編號
    cname = jsonFile[m]['cname']                      #英雄名字
    skinName = jsonFile[m]['skin_name'].split('|')     #切割皮膚的名字,用於計算每個英雄有多少個皮膚
    skinNumber = len(skinName)     #下載圖片,構造圖片網址
    for bigskin in range(1,skinNumber+1):
        urlPicture = 'http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/'+str(ename)+'/'+str(ename)+'-bigskin-'+str(bigskin)+'.jpg'
        picture = requests.get(urlPicture).content         #獲取圖片的二進位制資訊
        with open(hero_dir+cname+"-"+skinName[bigskin-1]+'.jpg','wb') as f:      # 儲存圖片
            f.write(picture)
            x=x+1
            print("正在下載....第"+str(x)+"張")
end = time.time()          #程式結束時間
time_second = end-start    #執行時間
print("共下載"+str(x)+"張,共耗時"+str(time_second)+"秒")

相關文章