当前位置: 首页>开发笔记>正文

爬取英雄聯盟英雄皮膚數據

爬取英雄聯盟英雄皮膚數據

爬取英雄聯盟英雄皮膚數據

import requests
import jsonpath
import os
from urllib.request import urlretrieve      # 下載文件包
from lxml import etree# 獲取英雄ID
def get_id():response=requests.get('https://game.gtimg.cn/images/lol/act/img/js/heroList/hero_list.js').json()# print(response)   # 網頁數據# jsonpath  $..heroId 表示json下所有的heroIdhero_ids=jsonpath.jsonpath(response,'$..heroId')# 打印所有英雄名稱及英雄個數# print(hero_ids)# print('英雄個數為: %d'%len(hero_ids))# print('英雄個數為: ' + str(len(hero_ids)))   # 兩種表示方法效果相同return hero_ids# 獲取英雄皮膚
def get_skins(hero_ids):headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) \Chrome/84.0.4147.125 Safari/537.36 Edg/84.0.522.59'}for heroId in hero_ids:url='https://game.gtimg.cn/images/lol/act/img/js/hero/{}.js'.format(heroId)response=requests.get(url=url,headers=headers).json()skins=response['skins']mainimgs=jsonpath.jsonpath(skins,'$..mainImg')names=jsonpath.jsonpath(response,'$..name')path = './lol英雄皮膚/' + names[0]try:# import os 創建文件# 如果知道父目錄,只是在其下創建一個子目錄的話,只需用os.mkdir(path)# 如果想同時新建多層目錄,就需要使用makedirs  os.makedirs(path)# 需要格外注意:mkdir(正確) != mkdirs(錯誤) != makedirs(正確)if not os.path.exists(path):os.makedirs(path)for name,mainimg in zip(names,mainimgs):urlretrieve(mainimg,path + '/' + name + '.jpg')except:passprint('<%s>下載成功' %names)if __name__=="__main__":id_list=get_id()get_skins(id_list)'''python3中urllib.request模塊提供的urlretrieve()函數。urlretrieve()方法直接將遠程數據下載到本地。urlretrieve(url, filename=None, reporthook=None, data=None)參數url:下載鏈接地址參數filename:指定了保存本地路徑(如果參數未指定,urllib會生成一個臨時文件保存數據。)參數reporthook:是一個回調函數,當連接上服務器、以及相應的數據塊傳輸完畢時會觸發該回調,我們可以利用這個回調函數來顯示當前的下載進度。參數data:指post導服務器的數據,該方法返回一個包含兩個元素的(filename, headers) 元組,filename 表示保存到本地的路徑,header表示服務器的響應頭'''

https://www.zydui.com/af309V28CDQ9VAF8B.html
>

相关文章:

  • IQVIA醫藥咨詢隨筆雜談
  • 爬取英雄聯盟英雄皮膚數據
  • 英雄聯盟 連接服務器失敗 請檢查您的網絡 是否啟用修復程序進行修復,英雄聯盟玩不了,提示未知的directx錯誤...
  • 三位千萬富翁告訴你:錢是怎么賺來的
  • 芳香之城傳奇的美麗神話故事
  • Solid Converter PDF注冊碼
  • 修改linux下面的字符集
  • 30個不可思議的好玩又實用的HTML5移動應用
  • 安卓新出病毒幽靈推,回顧android歷史上的那些吸費病毒
  • 游戲編程技術貼:AI設計的若干規則闡述
  • mac啟動自動運行程序_什么啟動了,為什么在我的Mac上運行?
  • 什么是UserEventAgent,它為什么在Mac上運行?
  • 蔚來汽車新財報超預期,短期或難盈利互聯網造車行不通嗎?
  • 車行的進貨問題
  • spring BeanFactory 家族介紹
  • 地址家族/名字解析
  • VS中怎么調出資源方案管理器
  • 告別低效工作,幫你重新找回工作的掌控感
  • 從Mac連接Windows共享打印機(1)
  • c4d流體插件_Cinema 4D 流體模擬插件 TurbulenceFD C4D v1.0 Build 1425 Win64
  • 經典生活總結語錄(搞笑欣賞)
  • 項目打包打的是什么包_早安打工人是什么梗,朋友圈打工人文案語錄表情包!...
  • 前端學習從入門到高級全程記錄之25(webapi)
  • 中職計算機應用普測考試試題及答案,2017職稱計算機考試WPS_Office檢測練習及答案9...
  • 微型計算機的主板又稱為,供電設計比7999元的主板還猛,ROG M11A主板首次亮相
  • webStorm使用斷點
  • 逆風翻盤?順豐大股東聯手本來集團上演O2O+B2C生鮮大戲
  • 三國志戰略版:Daniel_“坦克兵種”象兵分析
  • RISK-V品牌的中國化歷程(下)
  • 網游找call通殺方法之另辟蹊徑