20行代碼爬取王者榮耀全英雄皮膚!讓你享受白嫖的快樂!


引言

王者榮耀大家都玩過吧,沒玩過的也應該聽說過,作為時下最火的手機MOBA游戲,咳咳,好像跑題了。我們今天的重點是爬取王者榮耀所有英雄的所有皮膚,而且僅僅使用20行代碼即可完成。

 

准備工作

爬取皮膚本身並不難,難點在於分析,我們首先得得到皮膚圖片的url地址,話不多說,我們馬上來到王者榮耀的官網:


 

我們點擊英雄資料,然后隨意地選擇一位英雄,接着F12打開調試台,找到英雄原皮膚的圖片地址:


 

接着,我們切換一下英雄的皮膚,會發現圖片地址沒有明顯的變化,只是最后的數字序號改變了,我們將兩個皮膚圖片的地址放在一起比較一下:


 

我們可以猜測,對於同一個英雄的皮膚圖片地址,僅僅是最后的數字序號不同,為了證實我們的猜想,我們可以繼續找出一個英雄的全皮膚圖片,找一個皮膚多一點的,例如我這里找的是孫尚香,將它的所有皮膚圖片地址放在一起比較:


 

由此我們得出結論,同一個英雄的皮膚圖片路徑從1開始依次遞增,我們再來看看不同英雄之間是如何區分的。會發現,不管皮膚圖片如何改變,瀏覽器上方的地址始終是不變的,所以我們將兩個不同英雄的url地址放到一起比較一下:


 

乍一看,似乎沒有什么規律,但我們要從這里發現一點,就是最后的數字其實控制的是哪個英雄,我們暫且認為它是英雄的編號,可不幸的是,英雄編號之間好像沒有什么規律,不用着急,我們再到官網上找找線索。

在英雄資料界面,我們打開F12調試台,通過抓取網絡請求,我發現了幾個文件:


 

點擊網絡,然后點擊XHR,就可以看到這幾個文件,看到文件的名字大家應該就清楚了,這些文件存儲的就是英雄列表信息,我們點擊查看一下:


 

沒錯,這里存儲的就是英雄信息,包括英雄的名字,英雄編號等等其它信息,我們可以試試這些信息的准確性,例如小喬的ename,也就是英雄編號為106;

經過嘗試后發現確實如此。

到這里,准備工作就完成了,其實進行到這里,整個工程就完成了一半了,接下來就是代碼的實現了。

 

代碼實現

我們首先就要通過這個地址獲取到英雄列表信息的json數據,然后解析json數據,將有用的信息提取出來:


 

這樣我們就獲取到了英雄名字和編號;

拿到了英雄編號之后,事情就變得很簡單了,只需拼接一下url地址即可;

下面看代碼實現:


 

實現是不是非常地簡單,代碼注釋也已經寫得很清楚了,有了這個函數之后,我們只需調用一下,就可以下載圖片了。

我們還可以測試一下這個程序,首先要在桌面上創建一個文件夾,名為wzry,因為這里的代碼我已經寫死了,如果要修改的話大家也可以進行修改,文件夾創建完成后點擊運行即可,等待片刻,圖片就全部下載完成了。


 

 

 

結尾

爬蟲是非常有趣的,因為它非常直觀,視覺沖擊感強,寫出來也很有成就感,爬蟲雖然強大,但千萬不能隨意爬取隱私信息。

最后,如果對文中程序有更好的建議,歡迎評論區留言。


 

不管你是轉行也好,初學也罷,進階也可

——【值得關注點擊進入】的C/C++編程學習進階俱樂部 ——

涉及到:C語言、C++、windows編程、網絡編程、QT界面開發、Linux編程、游戲編程、黑客等等......


 

一個活躍、高格調、高層次的程序員編程學習殿堂;編程入門只是順帶,思維的提高才有價值!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM