1. 程式人生 > >python實現王者榮耀英圖片收集

python實現王者榮耀英圖片收集

pytho 獲取圖片 所有 orien 發現 mark 請求 發出 view

一個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文件提取出來的,所以我們可以斷定請求地址就是這個了。

代碼思路

在上面的網絡地址中發出請求就可以獲取圖片,但關鍵是如何將圖片分名字存儲到文件夾內,具體的可以參照項目代碼:
技術分享圖片

效果圖

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

python實現王者榮耀英圖片收集