爬取全部穿越火线武器的图片以武器名称命名保存到本地文件
作者:互联网
申明:资料来源于网络及书本,通过理解、实践、整理成学习笔记。
文章目录
穿越火线官网
完整代码
import requests
# 循环33次,官网武器库展示有33页
for i in range(34):
# 接口url
url = 'https://apps.game.qq.com/cgi-bin/ishow/ver2.0/workList_inc.cgi?iActId=85&sVerifyCode=ABCD&sDataType=JSON&totalpage=12&iOrder=0&page={}&jsoncallback=jsonp1619421788694&iSortNumClose=1'.format(
i)
# 获取信息
res = requests.get(url)
res.encoding = res.apparent_encoding
# 处理信息
data = eval(res.text.split('(')[1].split(')')[0])['List']
# 解密方法(获取到的武器图片与名称都经过了加密处理)
def decode(s: str):
dict_decode = {'%3A': ':',
'%2F': '/',
'%2D': '-',
'%2E': '.',
'%5F': '_',
'%20': ' ', }
for j in dict_decode.keys():
if j in s:
s = s.replace(j, dict_decode[j])
return s
for k in data:
# 获取武器的名称
name = decode(k['sProdName'])
# 获取武器的图片地址
image = decode(k['sProdImgNo_1'])
# 定义保存图片的路径
dir = 'images'
# 将获取的武器图片以名称命名写入文件夹
with open(dir + '/{}.png'.format(name), 'wb') as f:
f.write(requests.get(image).content)
运行结果
一个坚持学习,坚持成长,坚持分享的人,即使再不聪明,也一定会成为优秀的人!
如果看完觉得有所收获的话,记得一键三连哦,谢谢大家!
标签:decode,res,保存,爬取,dict,武器,火线 来源: https://blog.csdn.net/weixin_46382560/article/details/116161854