王者荣耀 -很火的手游-简直老少通吃-令人发指-虽然操作简单-但为什么你还是会被虐, 其实 是有技巧的--本文利用Python带你研究王者荣耀各类英雄的出装小技巧,让你成为大神般的存在,学习资料可以加下扣扣裙:483546416获取

环境:Python3+ Windows

IDE:随意

模块:

  • from urllib.request import urlretrieve
  • import requests

首先找到三个接口

第一个是英雄武器的接口

# 武器URL地址weapon_url = "http://gamehelper.gm825.com/wzry/equip/list?channel_id=90009a&app_id=h9044j&game_id=7622&game_name=%E7%8E%8B%E8%80%85%E8%8D%A3%E8%80%80&vcode=12.0.3&version_code=1203&cuid=2654CC14D2D3894DBF5808264AE2DAD7&ovr=6.0.1&device=Xiaomi_MI+5&net_type=1&client_id=1Yfyt44QSqu7PcVdDduBYQ%3D%3D&info_ms=fBzJ%2BCu4ZDAtl4CyHuZ%2FJQ%3D%3D&info_ma=XshbgIgi0V1HxXTqixI%2BKbgXtNtOP0%2Fn1WZtMWRWj5o%3D&mno=0&info_la=9AChHTMC3uW%2BfY8%2BCFhcFw%3D%3D&info_ci=9AChHTMC3uW%2BfY8%2BCFhcFw%3D%3D&mcc=0&clientversion=&bssid=VY%2BeiuZRJ%2FwaXmoLLVUrMODX1ZTf%2F2dzsWn2AOEM0I4%3D&os_level=23&os_id=dc451556fc0eeadb&resolution=1080_1920&dpi=480&client_ip=192.168.0.198&pdunid=a83d20d8"

第二个是英雄列表接口

# 英雄列表URL地址heros_url = "http://gamehelper.gm825.com/wzry/hero/list?channel_id=90009a&app_id=h9044j&game_id=7622&game_name=%E7%8E%8B%E8%80%85%E8%8D%A3%E8%80%80&vcode=12.0.3&version_code=1203&cuid=2654CC14D2D3894DBF5808264AE2DAD7&ovr=6.0.1&device=Xiaomi_MI+5&net_type=1&client_id=1Yfyt44QSqu7PcVdDduBYQ%3D%3D&info_ms=fBzJ%2BCu4ZDAtl4CyHuZ%2FJQ%3D%3D&info_ma=XshbgIgi0V1HxXTqixI%2BKbgXtNtOP0%2Fn1WZtMWRWj5o%3D&mno=0&info_la=9AChHTMC3uW%2BfY8%2BCFhcFw%3D%3D&info_ci=9AChHTMC3uW%2BfY8%2BCFhcFw%3D%3D&mcc=0&clientversion=&bssid=VY%2BeiuZRJ%2FwaXmoLLVUrMODX1ZTf%2F2dzsWn2AOEM0I4%3D&os_level=23&os_id=dc451556fc0eeadb&resolution=1080_1920&dpi=480&client_ip=192.168.0.198&pdunid=a83d20d8"

第三个是英雄出装的接口

第三个接口有点特殊,需要前面的英雄id,也就是hero_id

# 英雄出装URLhero_url = "http://gamehelper.gm825.com/wzry/hero/detail?hero_id={}&channel_id=90009a&app_id=h9044j&game_id=7622&game_name=%E7%8E%8B%E8%80%85%E8%8D%A3%E8%80%80&vcode=12.0.3&version_code=1203&cuid=2654CC14D2D3894DBF5808264AE2DAD7&ovr=6.0.1&device=Xiaomi_MI+5&net_type=1&client_id=1Yfyt44QSqu7PcVdDduBYQ%3D%3D&info_ms=fBzJ%2BCu4ZDAtl4CyHuZ%2FJQ%3D%3D&info_ma=XshbgIgi0V1HxXTqixI%2BKbgXtNtOP0%2Fn1WZtMWRWj5o%3D&mno=0&info_la=9AChHTMC3uW%2BfY8%2BCFhcFw%3D%3D&info_ci=9AChHTMC3uW%2BfY8%2BCFhcFw%3D%3D&mcc=0&clientversion=&bssid=VY%2BeiuZRJ%2FwaXmoLLVUrMODX1ZTf%2F2dzsWn2AOEM0I4%3D&os_level=23&os_id=dc451556fc0eeadb&resolution=1080_1920&dpi=480&client_ip=192.168.0.198&pdunid=a83d20d8".format(hero_id)

下面就是愉快的代码之旅了~

先热热身,通过urllib下载王者荣耀得英雄图片,下面是代码部分:

# 下载王者荣耀英雄图片def hero_imgs_download(url,header): # 获取文本.text 获取图片 .content req = requests.get(url = url,headers = header).json() # 字典格式 # print((req)) hero_num = len(req['list']) print("一共有%d个英雄"%hero_num) hero_images_path = 'hero_images' hero_list = req['list'] for each_hero in hero_list: # print(each_hero) hero_photo_url = each_hero['cover'] hero_name = each_hero['name'] + '.jpg' filename = hero_images_path + '/' + hero_name print("正在下载 %s的图片"%each_hero['name']) # if hero_images_path not in os.listdir(): # os.makedirs(hero_images_path) # 下载图片 urlretrieve(url = hero_photo_url,filename = filename)

运行后下载图片:、

接下来是获取英雄的名字和ID,代码如下:

# 打印所有英雄的名字和IDdef hero_list(url,header): print('*' * 100) print(' 欢迎使用《王者荣耀》出装小助手!') print('*' * 100) req = requests.get(url = url,headers = header).json() flag = 0 hero_list = req['list'] for each_hero in hero_list: flag += 1 # 为end传递一个    ,这样print函数不会在字符串末尾添加一个换行符,而是添加一个  print("%s的ID为:%s"%(each_hero['name'],each_hero['hero_id']),end = '  ') if flag == 3: # 先不加end 在加end 看效果 print(' ',end='') flag = 0

运行效果如图所示:

接下来就是出装的最主要部分

根据用户输入的英雄ID,查询出英雄的出装,以及总价

代码如下:

# 获取并打印出装信息# weapon_info 所有武器的字典def hero_info(url,header,weapon_info): req = requests.get(url=url, headers=header).json() print(" 历史上的%s: %s"%(req['info']['name'],req['info']['history_intro'])) for each_equip_choice in req['info']['equip_choice']: # print(each_equip_choice) print(' %s:%s'%(each_equip_choice['title'],each_equip_choice['description'])) flag = 0 total_price = 0 for each_weapon in each_equip_choice['list']: flag += 1 weapon = seek_weapon(each_weapon['equip_id'],weapon_info) # print(weapon) weapon_name = weapon[0] weapon_price = weapon[1] print('%s:%s' % (weapon_name, weapon_price), end='  ') if flag == 3: print(' ', end='') flag = 0 total_price += int(weapon_price) print("神装套件共计:%d"%total_price)

这个时候运行会有一些问题,seek_weapon函数还没有定义,接下来定义seek_weapon,代码如下:

# 根据equip_id查询武器名字和价格# weapon_info - 存储所有武器的字典def seek_weapon(equip_id,weapon_info): for each_weapon in weapon_info: if each_weapon['equip_id'] == str(equip_id): weapon_name = each_weapon['name'] weapon_price = each_weapon['price'] return weapon_name,weapon_price

seek_weapon函数在调用的时候,需要weapon_info,也就是所有武器的字典,这个时候就需要在定义一个函数来获取武器的字典

# 获取武器信息def hero_weapon(url,header): req = requests.get(url=url, headers=header).json() weapon_info_list = req['list'] return weapon_info_list

另附headers

headers = { 'Accept-Charset': 'UTF-8', 'Accept-Encoding': 'gzip,deflate', 'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 6.0.1; MI 5 MIUI/V8.1.6.0.MAACNDI)', 'X-Requested-With': 'XMLHttpRequest', 'Content-type': 'application/x-www-form-urlencoded', 'Connection': 'Keep-Alive', 'Host': 'gamehelper.gm825.com'}

最终的运行效果下图:

其实还可以继续延伸的,可以做成一个APP,然后查询出装的,写上好看的界面!感觉就是一款很不错的APP,emmmmm可以类似以前的LOL盒子

写在最后

前几天有私信我要Python的学习资料,我连夜整理了一些有深度的Python教程和参考资料,从入门到高级的都有,文件已经打包好了,正在学习Python的同学可以免费下载学习学习。文件下载方式请关注微信公众号:程序员大牛!首先把代码撸起来!首先把代码撸起来!首先把代码撸起来!重要的事说三遍,哈哈。“编程是门手艺活”。什么意思?得练啊。

利用Python开发王者荣耀,一路直奔上王者相关推荐

  1. python面向对象实例王者荣耀_大牛程序员利用Python开发王者荣耀带妹神器,一路直奔上王者...

    王者荣耀 -很火的手游-简直老少通吃-令人发指-虽然操作简单-但为什么你还是会被虐, 其实 是有技巧的--本文Python大神带你研究王者荣耀各类英雄的出装小技巧,让你成为大神般的存在 前期准备 环境 ...

  2. python接私活王者_大牛程序员利用Python开发王者荣耀带妹神器,一路直奔上王者...

    王者荣耀 -很火的手游-简直老少通吃-令人发指-虽然操作简单-但为什么你还是会被虐, 其实 是有技巧的--本文Python大神带你研究王者荣耀各类英雄的出装小技巧,让你成为大神般的存在 前期准备 环境 ...

  3. 大牛程序员利用Python开发王者荣耀带妹神器,一路直奔上王者

    王者荣耀 -很火的手游-简直老少通吃-令人发指-虽然操作简单-但为什么你还是会被虐, 其实 是有技巧的--本文Python大神带你研究王者荣耀各类英雄的出装小技巧,让你成为大神般的存在 前期准备 环境 ...

  4. 利用python开发app实战

    我很早之前就想开发一款app玩玩,无奈对java不够熟悉,之前也没有开发app的经验,因此一直耽搁了.最近想到尝试用python开发一款app,google搜索了一番后,发现确实有路可寻,目前也有了一 ...

  5. 利用Python开发App

    我很早之前就想开发一款app玩玩,无奈对java不够熟悉,之前也没有开发app的经验,因此一直耽搁了.最近想到尝试用python开发一款app,google搜索了一番后,发现确实有路可寻,目前也有了一 ...

  6. 利用Python开发App,来一起看看他是怎么做的。

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 本文来自腾讯云,作者:Python小二 最近想到尝试用python开发一款app, ...

  7. python开发app的软件_如何利用python开发手机app

    python语言虽然很万能,但用它来开发app还是显得有点不对路,因此用python开发的app应当是作为编码练习,加上目前这方面的模块还不是特别成熟,bug比较多. 准备工作 利用python开发a ...

  8. python微信爬取教程_PYTHON爬虫之旅系列教程之【利用Python开发微信公众平台一】...

    感谢大家的等待,好啦,都准备好瓜子.板凳,老司机要发车啦-- 本系列课程讲述"PYTHON爬虫之旅",具体大纲可参考:[PYTHON爬虫之旅]概要目录. 本节课讲述如何利用Pyth ...

  9. [539]利用python开发app

    说在前面的话 python语言虽然很万能,但用它来开发app还是显得有点不对路,因此用python开发的app应当是作为编码练习.或者自娱自乐所用,加上目前这方面的模块还不是特别成熟,bug比较多,总 ...

最新文章

  1. Facebook称其新的AI技术可以更快发现仇恨言论
  2. 删除Linux下/tmp目录引起的不正常登录系统
  3. android assets 文件夹 复制,Android 中 Assets目录下 文件或文件夹的复制
  4. linux下安装 ping 命令
  5. (36)FPGA面试技能提升篇(FPGA行业产品)
  6. 嵌入式Linux入门4:版本控制git的使用
  7. Window 的版本号管理策略
  8. ubuntu12.04下安装NVIDIA驱动
  9. 赢在微点答案专区英语_自考英语二太难?看了墨盒的单词本,保你信心满满去考试!...
  10. 四川大学计算机专业贵州分数线,四川大学2019贵州录取分数线
  11. 前端清除缓存的集中方法
  12. BZOJ 2006超级钢琴
  13. jquery,ajax动态从数据库加载数据并自动选中复选框
  14. 经典论文-MobileNetV3论文及实践
  15. 基于Lucene、Servlet新闻搜索引擎——国科大信息检索导论(王斌)大作业
  16. 华中师范大学计算机入学考试题目及分值,2018秋华师计算机的作业满分.docx
  17. 快速搭建Kerberos服务端及入门使用
  18. 英特尔SSD 610p明年Q4发布:3D闪存/最大2TB
  19. ubuntu安装微信和迅雷
  20. R包 Rstudioapi学习 (未完成)

热门文章

  1. 什么?古代也有程序员?
  2. 小米5-root-记录
  3. c语言中100m怎么表示,科目三道路驾驶技能和安全文明驾驶常识考试满分分别为100分,成绩分别达到80和90分的为合格。...
  4. 数三退一问题||拉手成圈出圈问题
  5. 快学Big Data -- Hadoop(十三)
  6. android输入法服务,Android调用系统输入法
  7. Android 项目必备(五)--> Android Studio 制作 App 的 logo 图标
  8. 使用python获取群聊信息并分析群聊成员
  9. Makefile中传递宏定义字符串给C
  10. 家谱只能记家族好事吗?家丑不可外扬,后人读谱一脸懵?