使用python做王者荣耀挂机刷金币脚本

原理:

由于每次通过冒险模式都会有金币,而这个动作十分重复,连图像识别都不需要,可以考虑使用程序代替人工。
简单的说是重复以下的步骤:
  1. 界面打开至挑战关卡:陨落的废都 - 魔女回忆 【点击下一步】
  2. 点击开始闯关
  3. 进入挑战界面。【点击右上角-自动-等待挑战结束】
  4. 进入挑战完成界面。【点击屏幕继续】
  5. 进入关卡奖励界面。【点击再次挑战】
  6. 再次闯关
我们需要一个程序代替我们手工点点点,可以想到使用安卓sdk里的adb工具,向手机发送点击命令。
adb shell input tap x y
就是这个命令,如果 在cmd命令行里执行一下
adb shell input tap 500 500
就会在手机500,500位置模拟点击一下。

环境准备:

下载安卓的platform-tools:
http://www.androiddevtools.cn/
访问这个网址
找到这里

根据你的操作系统下载完了之后解压

然后配置环境变量:


在Path的最后加上刚刚你解压出来的目录,D:\platform-tools 是我刚刚解压的目录。与前面的字符串要用英文的分号;隔开

代码:

打开IDE粘贴以下代码:
# -*- coding: utf-8 -*-
import os
from time import sleep
repeat_times = 600
def tap_screen(x, y):
    os.system('adb shell input tap {} {}'.format(x, y))
if __name__ == '__main__':
    for i in range(repeat_times):
        if(i > 0):
            tap_screen(2489, 1307)  # 再次挑战
            print("再次挑战开始")
            sleep(5)
        tap_screen(2155, 1218)#闯关
        print("开始闯关")
        sleep(12)
        tap_screen(2764, 53)#自动
        print("自动按钮点击")
        sleep(50)
        tap_screen(500,500)#点击屏幕继续
        print("点击屏幕继续")
        sleep(5)
        tap_screen(2489, 1307)  # 再次挑战
        sleep(1)
        print(i)
os.system  的效果就和你在cmd里执行命令一样
由于现在奇怪比例的手机层出不穷,我自己用的18.5:9的三星S8,所以把所有坐标都写死了,可以根据自己手机修改上面的各种坐标及休眠时间。在手机的开发者模式里打开显示指针位置,就会显示你当前触摸的区域的坐标


  • 17
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值