天天看點

python 安卓王者榮耀刷金币

python王者榮耀金币腳本

用python模拟按鍵自動刷王者榮耀冒險模式的腳本

1.在電腦上使用手遊模拟器,我用的騰訊手遊助手

2.王者代碼中截圖部分以及路勁部分自己設定,截圖一定要自己截,可能我們電腦不一樣像素也不同。

3.建議自己先動刷兩次大師級刺秦之地,把手動改為自動。自己改完之後,後續就不用改了。

4.使用過程中不要蓋住王者榮耀界面。

插入相關的庫:

import pyautogui as pg
import time
           

主要庫是 pyautogui ,這個庫的功能是根據截圖查找到相應螢幕的位置,可以自動根據代碼移動滑鼠以及做到點選的功能。

總的代碼

import pyautogui as pg
import time

pg.FAILSAFE=False  #防止出現崩潰
cishu=1
sc=pg.screenshot()

#根據輸入的坐标,将滑鼠移動至此處,并且點選左邊左鍵
def click(x,y):    
    pg.moveTo(x,y)
    pg.click()
    
#輸入截圖,找到螢幕中與截圖相似的位置,并且中心坐标    
def get_button_center_from_screen(button1,puth1="F:\\python\\project\\wangzherongyao"):
    pg.screenshot("screen.png")
    button_png=puth1+"\\"+button1
    start_pos=pg.locateOnScreen(button_png)
    button_centre=pg.center(start_pos)
    return button_centre   

def get_times():        #自定義刷副本的次數
    a=input("請輸入你要刷副本的次數:")
    return a

#由于locateonscreen函數在搜尋不到對應函數時,會報錯,是以用try的形式不斷循環通路,一旦得到坐标,立即傳回坐标值
def get_xy(png_path)
    a=1
    while (1):
        try:
            x, y = get_button_center_from_screen(png_path)
        except:
            time.sleep(1)
            a=a+1
            if a==60:
                break
            continue
        else:
            break
    return x,y



#開始根據關卡整合按鍵順序
def automouse():
    print("開始")
    n=1
    deadline=get_times()
    deadline=int(deadline)
    while(n<=deadline):
        print("{now} 第{n}次\n".format(now=time.strftime("%m-%d %H:%M:%S"), n=n))
        #開始進圖,本程式選用 大師級刺秦之地、
        x,y=get_xy("chuangguan.png")
        if(x,y)!=(0,0):
            print("成功啦")
            click(x,y)
        else:
            print("不好意思兄弟失敗了!關閉吧。")
        time.sleep(5)
       
       #進圖開始碰到阿珂,左上角有跳過按鈕,取到x,y并且跳過
        x,y=get_xy("tiaoguo.png")
        click(x,y)
        time.sleep(60)
        
		#大約60s後打完怪,然後再次檢驗兩次跳過并且點選
        x, y = get_xy("tiaoguo.png")
        click(x,y)
        x, y = get_xy("tiaoguo.png")
        click(x,y)
        
 		#選擇重新開始點選任意繼續
        time.sleep(1)
        x, y = get_xy("jixu.png")
        click(x,y)
		
		#點選再次闖關,進入下次循環
        print("重新開始")
        time.sleep(1)
        print("again")
        x,y=get_xy("zaicitiaozhan.png")
        n=n+1
        click(x,y)
        time.sleep(1)
if __name__ == '__main__':
    automouse()