一个python写的小爬虫项目,爬虫相关的很容易写,关键是怎么找到爬取图片的位置。
图片位置分析
hero_list_url = 'http://pvp.qq.com/web201605/js/herolist.json'
hero_skin_root_url = 'http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/'
首先看提取出的两个url地址:hero_list_url与hero_skin_root_url,一个是json文件、另一个是jpg文件的网络位置。接下来我来分析一下这两个目标位置是如何找到的:
打开抓包软件进行抓包
在所有图片加载之前会出现一个json文件,这个json文件就是相对应的英雄信息,包括图片和其他信息。
再看数据包中的其他数据:
首先看/images/yxzj/img201606/heroimg/176/176.jpg
,所对应的图像为一个英雄的头像;但是很明显的不是我们所追求的英雄全图。
再点开这个头像发现又抓到了几个新的数据包,其中就有我们要的图片的数据包:
查看具体图像的请求地址:
请求地址为/images/yxzj/img201606/skin/hero-info/176/176-bigskin-1.jpg
,而多次请求就可以发现变化的是后面的176/176-bigskin-1,前面的/images/yxzj/img201606/skin/hero-info/
是不会变化的,而这个176的编号是可以通过前面的json文件提取出来的,所以我们可以断定请求地址就是这个了。
代码思路
在上面的网络地址中发出请求就可以获取图片,但关键是如何将图片分名字存储到文件夹内,具体的可以参照项目代码: