####前提:

本文主要功能是:

1.用python代刷王者荣耀金币

2.爬取英雄信息

3.爬取王者荣耀图片之类的。

(全部免费附加源代码)

思路:

第一个功能是在基于去年自动刷跳一跳python代码上面弄的,思路来源陈想大佬,主要是图片识别像素,然后本机运行模拟器即可,第二、三功能是python基本爬虫功能。3个功能整合了一下。

####实现效果如下:



####自动刷王者荣耀金币(主要):
配置环境

adb环境配置: https://www.cnblogs.com/yc8930143/p/8259486.html

                 i.            pip 安装PIL模块ii.            pip安装six模块iii.            pip安装shutil模块iv.            pip安装subprocess模块v.            pip安装numpy模块vi.            pip安装matplotlib模块

模拟器或者手机什么的只要adb device 能识别就行,端口什么的不影响,然后命令行在文件根目录下运行即可。

过程:

基本环境弄好后,代码就是search_jump的像素识别(大小为模拟器或手机界面大小),在一定范围内进行点击,然后循环点击即可,感觉可以用到其他APP上面(比如全名K歌签到领取鲜花等等)或者服务器上装一个windows系统,这样就可以一直跑了.

注意:并不是只有一个automain.py代码,其中涉及到其他文件夹下的函数调用,主要就是模拟点击功能的实现吧。

代码解析:

screent_shot(屏幕截图):screen_way是截图方式,通过pull_screenshot和check_screenshot进行屏幕截图,便于后面图片像素分析(读者也可自己加入选择部分截图功能)

yes_or_no:基本连接手机或模拟器函数,判断电脑是否连接上外设

然后就是search_jump,game_next等基本函数了,感觉还是蛮容易理解的,给出源代码吧

          链接: [https://pan.baidu.com/s/1PXDPduSEUbAw-pOvrypM4A](https://pan.baidu.com/s/1PXDPduSEUbAw-pOvrypM4A) 提取码: am7s

2.爬取图片和验证码(次要)

识别官网API接口即可,然后简单处理信息,对于爬虫还算一个比较好的入门,给出完整代码

picture.py代码:

          核心API接口就是:http://gamehelper.gm825.com/wzry/hero/list?game_id=7622   ,然后用户简单分析一下json数据即可
import requests
import os
from urllib.request import urlretrieve
'''
遇到不懂的问题?Python学习交流群:1136201545满足你的需求,资料都已经上传群文件,可以自行下载!
'''
def download(url):headers = {'Accept-Charset': 'UTF-8','Accept-Encoding': 'gzip, deflate','Connection': 'Keep-Alive'}res = requests.get(url, headers=headers).json()hero_num = len(res['list'])print('[Hero Num]:%d' % hero_num)for hero in res['list']:pic_url = hero['cover']hero_name = hero['name'] + '.jpg'filename = './images/' + hero_nameif 'images' not in os.listdir():os.makedirs('images')urlretrieve(url=pic_url, filename=filename)print('[INFO]:Get %s picture...' % hero['name'])if __name__ == '__main__':print('**************************************************************************')print('*****************!!!欢迎使用王者荣耀小助手!!!*************************')print('*****************作者:Empirefree                    *********************')print('*****************工具: Pycharm                       *********************')print('*****************时间: 2018/9/24 17:11               *********************')print('**************************************************************************')download("http://gamehelper.gm825.com/wzry/hero/list?game_id=7622")print('**************************************************************************')print('照片已下载到您images目录下,请保证有网条件下执行本程序')print('**************************************************************************')n = input('回车结束........')

info.py代码

分析:和上述代码差不多,也是接口分析问题: http://gamehelper.gm825.com/wzry/equip/list?game_id=7622 ,个人感觉比较好用的就是网络图片下载的语句

下载图片:urlretrieve()

import requests
import time
'''
遇到不懂的问题?Python学习交流群:1136201545满足你的需求,资料都已经上传群文件,可以自行下载!
'''
class Spider():def __init__(self):self.headers = {'Accept-Charset': 'UTF-8','Accept-Encoding': 'gzip, deflate','Connection': 'Keep-Alive'}self.weapon_url = "http://gamehelper.gm825.com/wzry/equip/list?game_id=7622"self.heros_url = "http://gamehelper.gm825.com/wzry/hero/list?game_id=7622"self.hero_url = "http://gamehelper.gm825.com/wzry/hero/detail?hero_id={}"print('*' * 60)print('[INFO]:王者荣耀助手...')print('[Usage]:请输入英雄ID获取英雄信息...')print('[Author]:Empirefree')print('*' * 60)# 外部调用函数def run(self):heroId_exist = self._Get_HeroId()heroId = input('\nEnter the Hero ID:')if heroId not in heroId_exist:print('[Error]:HeroId inexistence...')returnweapon_info = self._Get_WeaponInfo()self._Get_HeroInfo(weapon_info, heroId)# 获得英雄IDdef _Get_HeroId(self):res = requests.get(url=self.heros_url, headers=self.headers)heros = res.json()['list']num = 0heroId_list = []for hero in heros:num += 1print('%sID: %s' % (hero['name'], hero['hero_id']), end='\t\t\t')heroId_list.append(hero['hero_id'])if num == 3:num = 0print('')return heroId_list# 获取武器信息def _Get_WeaponInfo(self):res = requests.get(url=self.weapon_url, headers=self.headers)weapon_info = res.json()['list']return weapon_info# 获得出装信息def _Get_HeroInfo(self, weapon_info, heroId):def seek_weapon(equip_id, weapon_info):for weapon in weapon_info:if weapon['equip_id'] == str(equip_id):return weapon['name'], weapon['price']return Noneres = requests.get(url=self.hero_url.format(heroId), headers=self.headers).json()print('[%s History]: %s' % (res['info']['name'], res['info']['history_intro']))num = 0for choice in res['info']['equip_choice']:num += 1print('\n[%s]:\n  %s' % (choice['title'], choice['description']))total_price = 0for weapon in choice['list']:weapon_name, weapon_price = seek_weapon(weapon['equip_id'], weapon_info)print('[%s Price]: %s' % (weapon_name, weapon_price))if num == 3:print('')num = 0total_price += int(weapon_price)print('[Ultimate equipment price]: %d' % total_price)if __name__ == '__main__':while True:Spider().run()time.sleep(5)

Python-王者荣耀自动刷金币+爬取英雄信息+图片相关推荐

  1. Python 王者荣耀自动获取金币脚本

    1. 原理 使用adb指令模拟操作屏幕 2. 准备 2.1 安装python3环境 建议安装到默认路径,否则添加安装路径到环境变量 ubuntu一键安装:sudo apt-get install py ...

  2. Python爬虫之简单爬虫之爬取英雄联盟官网的英雄的皮肤

    Python爬虫之简单爬虫之爬取英雄联盟官网的英雄的皮肤 文章目录 Python爬虫之简单爬虫之爬取英雄联盟官网的英雄的皮肤 背景:LOL这款游戏有着大量的玩家,这个游戏里面人们津津乐道的皮肤,每一款 ...

  3. [Python Scrapy爬虫] 二.翻页爬取农产品信息并保存本地

    前面 "Python爬虫之Selenium+Phantomjs+CasperJS" 介绍了很多Selenium基于自动测试的Python爬虫程序,主要利用它的xpath语句,通过分 ...

  4. python刷新页面_Python模拟浏览器爬取天猫信息

    由于工作需要,需要提取到天猫400个指定商品页面中指定的信息,于是有了这个爬虫.这是一个使用 selenium 爬取天猫商品信息的爬虫,虽然功能单一,但是也算是 selenium 爬虫的基本用法了. ...

  5. python实战项目一:requests爬取淘宝图片

    按关键词爬取淘宝的图片 ●实验过程遇到的问题: 1.      一开始我没注意,将文件名写为requests.py,但是运行时却出现了这个错误:module 'requests' has no att ...

  6. 王者荣耀五周年,爬取102个英雄+326款皮肤,分析上线时间

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于可以叫我才哥 ,作者可以叫我才哥 1.概述 <王者荣耀> ...

  7. 王者荣耀盒子App数据爬取

    手机app爬虫听起来很高端神秘,但它其实大部分比网页爬虫都简单,因为大部分app都是可以直接抓到包的,少部分app没办法直接获取,需要 wireshark.反编译.脱壳 等方式去查找加密算法,而且ap ...

  8. python协程gevent案例:爬取斗鱼美女图片

    分析 分析网站寻找需要的网址 用谷歌浏览器摁F12打开开发者工具,然后打开斗鱼颜值分类的页面,如图: 在里面的请求中,最后发现它是以ajax加载的数据,数据格式为json,如图: 圈住的部分是我们需要 ...

  9. python 爬虫 第一周:学会爬取网页信息

    1.安装库 确保python和系统的版本一致,32 or 64 , pip --version 查看pip版本 Soup = BeautifulSoup(html,'lxml') 汤          ...

最新文章

  1. DL之perceptron:利用perceptron感知机对股票实现预测
  2. 详解 KDTree(转)
  3. oracle 日期计算
  4. Cocos creator之javascript闭包
  5. matlab 二维低通滤波器,matlab二维低通滤波器
  6. viper4android最新版卡刷包,viper4android音效驱动-ViPER4Android 安卓版v2.3.4.0-PC6安卓网...
  7. mysql 如何去掉毫秒_mysql 如何去掉毫秒值
  8. ESX4 安装前的考虑
  9. 路由器总是有信号无网络连接到服务器,路由器有信号没网络怎么回事?路由器没网络的解决方案...
  10. 汽车车牌自动识别技术
  11. 从零开始写 win32 打印机任务管理的 node 模块 (2)node-addon-api
  12. 富受贿数额为45437元
  13. 【C语言进阶】二、指针
  14. CF1619B Squares and Cubes
  15. 新唐单片机选型手册_新唐8051标准系列单片机选型指南
  16. 项目上线前出Bug,测试人该如何调整心态
  17. java streamhandler_使用Handler来增强Web服务的功能
  18. python四叶玫瑰注意点_四叶玫瑰的建立
  19. 推荐几款常用的企业网盘软件,你喜欢哪一款?
  20. 华为云14天鸿蒙设备开发-Day7WIFI功能开发

热门文章

  1. 小米8 +ADB+Ubuntu连接
  2. VUE实现限制输入框最多输入15个中文,或者30个英文
  3. 英语课topic计算机,英语中,topic和theme有何区别?最好能举例说明.举例越详细,追加分数越高....
  4. “软件定义汽车”,车企还没有做好准备
  5. 【面试题】测试工程师/自动化测试/测试开发面试题整理
  6. 编码打造属于自己的朋友圈“便携小空调”
  7. Python | *args **kwargs
  8. 动态获取本地json文件,渲染为表格-前端html+css+javascript,nth-child选择器,实时浏览插件,vscode,ajax
  9. 【21考研调剂上岸】资料分享(自己做的一些笔记)
  10. lua - 字符串分割