相信有一些人都玩過minecraft這款遊戲。玩過這款遊戲的人都知道開局必須要有一張皮膚,史蒂夫其中一張最經典的皮膚。今天我就要帶大家來用python爬取minecraft皮膚。首先呢,我們要找到一個皮膚網站,這裡的話,我已經給大家找來了一個皮膚網站,https://littleskin.cn 。進入網站,我們就會見到一堆皮膚,這就是今天我們要爬的皮膚。給各位分享一下程式碼。
import requests
import re
import time
import json
download_sucess = True
time.sleep(1.5)
pictures = input('你想下載多少張皮膚:')
while pictures.isdigit() == False:
print("請輸入數字!")
pictures = input('你想下載多少張皮膚:')
Path = input('請輸入儲存的路徑:')
print("請稍等......")
pictures = int(pictures)
for i in range(1,pictures+1):
url = 'https://littleskin.cn/skinlib/data?filter=skin&uploader=0&sort=likes&keyword=&page=' + str(i)
response = requests.get(url).json()
ids = re.findall("'tid': (.*?),",str(response))
for id in ids:
picture_url = 'https://littleskin.cn/preview/' + id + '.png'
picture_name = picture_url.strip('https://littleskin.cn/preview/')
picture = requests.get(picture_url).content
try:
with open(Path + '//%s'%picture_name,'wb') as file:
file.write(picture)
except FileNotFoundError:
download_sucess = False
print('路徑不存在!')
break
if download_sucess == False:
print("下載失敗!")
elif download_sucess == True:
print('下載完成!')
最終效果:
皮膚爬取的原理是通過json格式來檢視網站的每一張圖片的id號,再用拼接的方式組成一個圖片地址,最後再用二進位制的方式把圖片存放在我們的資料夾裡。希望各位能通過這篇文章學到東西。