day18
一、练习
下载所有英雄联盟的所有英雄所有皮肤
(每个英雄多个皮肤归一个英雄名称文件夹)
接口:
作用3:下载图片、视频、音频等
1.对图片地址、视频地址或者音频地址发送请求
response = requests.get('图片地址或者音频地址')
2.获取请求结果(视频 、音频或者图片数据)
result = responese.content
print(type(result))
class 'bytes'
3.将图片、视频或者图片的数据保存到文件中
with open('files/a.jpg', 'wb') as f:
f.write(result)
import requests
import os
url = '...'
headers = {}
response = requests.get(url, headers=headers)
def get_all_hero_id():
"""获取所有英雄id"""
response = requests.get('...')
result = response.json()
return [x['heroId'] for x in result['hero']]
def download(img_url, path):
"""
下载图片
:param img_url: 图片的网络地址
:param path: 图片保存到本地的地址
:return: None
"""
response = requests.get(img_url)
result = response.content
with open(path, 'wb') as f:
f.write(result)
print(f'{path}: ======下载完成!=====')
def get_one_hero_skin(hero_id):
# 可以观察得到每个英雄接口类似只有id不同,所以写{hero_id}可以得到每个英雄的页面
url = f'...'
response = requests.get(url)
result = response.json()
for x in result['skins']:
# 1)获取英雄信息数据
# 英雄名称
hero_name = x['heroName']
# 皮肤名称,名称里的/会影响路径,所以要替换掉成不影响路径的符号
skin_name = x['name'].replace('/', '')
# 皮肤图片地址,皮肤有普