小白通过Fiddler爬取手机app的数据并提取出来(详细版) | 您所在的位置:网站首页 › app数据包修改器 › 小白通过Fiddler爬取手机app的数据并提取出来(详细版) |
我们就以爬取安卓端上的王者营地上英雄热度榜为例: 1.下载 Fiddler下载网站,进入网站点击Download now 1.查看本地的IP,在命令行输入ipconfig 打开手机WLAN(我这里已经跟电脑连接同一个网),点击下面的修改网络 接下来我们要做的是提前json中的数据,保存到CSV文件中,并下载其英雄图标。 import csv import codecs import json from urllib.request import urlretrieve # 数据文本的命名 file_name = 'wangzhedata.csv' # 文件的保存路径 path = file_name # 指定编码为 utf-8, 避免写 csv 文件出现中文乱码 with codecs.open(path, 'w', 'utf-8') as csvfile: # 在创建wangzhedata.csv文件后,设立他们的首行表头 filednames = ['英雄ID', '英雄名', '英雄职业', '热度', '胜率', '登场率', 'Ban率', '头像链接', 'jumpurl'] writer = csv.DictWriter(csvfile, fieldnames=filednames) writer.writeheader() # 读取json文件内容,返回字典格式 with open('476_.json','r',encoding='utf8')as fp: # 加载json文件,解码规格化 json_data = json.load(fp) # 加载完后,它为dict,这点需要我们来分析(dict、list类型) hero_list = json_data['data']['list'] for i in hero_list: for j in i: if j == 'heroInfo': for k in i[j]: heroId = k['heroId'] heroName = k['heroName'] heroIcon = k['heroIcon'] # 这里是下载我们英雄的图标 urlretrieve(heroIcon, './heroIcon/' + heroName + '.jpg') jumpUrl = k['jumpUrl'] heroCareer = k['heroCareer'] winRate = i['winRate'] banRate = i['banRate'] showRate = i['showRate'] tRank = i['tRank'] try: # 将每次取出的英雄属性进行一行一行的写入 writer.writerow({'英雄ID': heroId, '英雄名': heroName, '英雄职业': heroCareer, '热度': tRank, '胜率': winRate, '登场率': showRate, 'Ban率': banRate, '头像链接': heroIcon, 'jumpurl': jumpUrl}) except UnicodeEncodeError: print("编码错误, 该数据无法写到文件中, 直接忽略该数据")运行之后,即可提取出相关的数据与图片: |
CopyRight 2018-2019 实验室设备网 版权所有 |