-- coding:utf-8 --
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 = (r’E:\code\python\skin\’)
if not os.path.exists(hero_dir):
os.makedirs(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) + “秒)
一、import json 知识点
json.dump()、 #将Python内置类型序列化为json对象后写入文件
json.dumps()、 #将 Python 对象编码成 JSON 字符串
json.load()、 #读取文件中json形式的字符串元素转化为Python类型
json.loads()、 #将已编码的 JSON 字符串解码为 Python 对象
二、import time 知识点
start = time.time() #程序开始时间
…
end = time.time() #程序结束时间
time_second = end-start #执行时间
print(共耗时”+str(time_second)+“秒)
三、import os 知识点
os.path.exists( ):#判断是否存在文件或目录
os.mkdir() #创建目录
os.maskdirs() #创建多级目录
四、import requests 知识点
url=requests.get(‘http://pvp.qq.com/web201605/js/herolist.json’).content
#requests.get() GET请求方式 其中返回的网页部分会存在.content和.text两个对象中。两者区别在于,content中间存的是字节码,而text中存的是Beautifulsoup根据猜测的编码方式将content内容编码成字符串
五、for i in range ( ) : #循环
六、len( ) #返回对象(字符、列表、元组等)长度或项目个数。
七、 with open(hero_dir+cname+”-"+skinName[bigskin-1]+’.jpg’,‘wb’) as f:
f.write(’ ')
#写入