作为python新手上路的小白,今天我来给大家安利一个爬取王者荣耀官方网站皮肤壁纸的项目,请大家多多关照!
一、登陆官网
首先我们登录王者荣耀官网,在菜单栏点击进入皮肤壁纸高清图可以看到以下画面:
通过按键F12查看网页元素我们可以看到网页对应的URL地址:
所以接下来我们将路径初始化并且定义一个请求函数,此函数用来处理调用并返回每一页URL:
#初始化路径
def __init__(self, save_path='./英雄'):
self.save_path = save_path
self.time = str(time.time()).split('.')
self.url = 'https://apps.game.qq.com/cgi-bin/ams/module/ishow/V1.0/query/workList_inc.cgi?activityId=2735&sVerifyCode=ABCD&sDataType=JSON&iListNum=20&totalpage=0&page={}&iOrder=0&iSortNumClose=1&iAMSActivityId=51991&_everyRead=true&iTypeId=2&iFlowId=267733&iActId=2735&iModuleId=2735&_=%s' % self.time[0]
def request(self, url):
#发送一个请求
#请求的标签
#请求的时间
#返回的结果
'''
Send a request
:param url: the url of request
:param timeout: the time of request
:return: the result of request
'''
response = session.get(url, timeout=10)#必须在10秒钟内反应,否则报错
assert response.status_code == 200#判断服务器对响应结果的请求,若状态码为200,则继续处理
return response
二、选择分辨率
由于一共有多页,每页有大概二十张皮肤壁纸,由上面的图片我们可以看到每张皮肤壁纸下面又有8种格式的分辨率,因此,为了能够自行选择下载想要的分辨率,我们找到相应的代码段,如下:
sProdImgNo_1: "https%3A%2F%2Fshp%2Eqpic%2Ecn%2Fishow%2F2735122214%2F1640154186%5F1265602313%5F35509%5FsProdImgNo%5F1%2Ejpg%2F200"
sProdImgNo_2: "https%3A%2F%2Fshp%2Eqpic%2Ecn%2Fishow%2F2735122214%2F1640154186%5F1265602313%5F35509%5FsProdImgNo%5F2%2Ejpg%2F200"
sProdImgNo_3: "https%3A%2F%2Fshp%2Eqpic%2Ecn%2Fishow%2F2735122214%2F1640154187%5F1265602313%5F35509%5FsProdImgNo%5F3%2Ejpg%2F200"
sProdImgNo_4: "https%3A%2F%2Fshp%2Eqpic%2Ecn%2Fishow%2F2735122214%2F1640154187%5F1265602313%5F35509%5FsProdImgNo%5F4%2Ejpg%2F200"
sProdImgNo_5: "https%3A%2F%2Fshp%2Eqpic%2Ecn%2Fishow%2F2735122214%2F1640154187%5F1265602313%5F35509