最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Python刷淘寶喵幣(低階入門(mén)版)

 更新時(shí)間:2019年10月30日 13:32:12   作者:蘇蘇與阿言  
這篇文章主要介紹了使用Python刷淘寶喵幣(低階入門(mén)版)的相關(guān)資料,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

這兩天因?yàn)殡p十一來(lái)臨,到處收集喵幣,反反復(fù)復(fù)的點(diǎn)擊操作搞得我十分頭痛,遂產(chǎn)生了寫(xiě)個(gè)腳本自動(dòng)點(diǎn)擊的想法。

【低階入門(mén)版本】之中不牽扯圖像文字轉(zhuǎn)換,或者圖像匹配的問(wèn)題,只是簡(jiǎn)單的屏幕開(kāi)屏、點(diǎn)擊和滑動(dòng)。如果你對(duì)更智能化的程序有想法,歡迎回復(fù)與我一起研究,后續(xù)我會(huì)增添文字識(shí)別和定位,以適應(yīng)在各類(lèi)不同屏幕上進(jìn)行此類(lèi)操作。

在開(kāi)始這篇文章前,首先你需要確認(rèn)自己電腦上安裝了 Python 或者 Anacoda(Python的一個(gè)集成類(lèi)庫(kù)),除此之外安裝了ADB(如果沒(méi)有安裝請(qǐng)查看這篇博文),確認(rèn)用USB鏈接到了手機(jī),手機(jī)需開(kāi)啟USB調(diào)試。

如果上述工作全部完成,那我們?cè)诮酉碌倪^(guò)程中應(yīng)該會(huì)進(jìn)行的很愉快。

首先新建一個(gè)Python文件(.py的),引入一些可能會(huì)用到的庫(kù)。

# coding: utf-8
import os
import sys
import subprocess
import time
import math
from PIL import Image
import random

在這之后,我們寫(xiě)上一些按鈕、點(diǎn)擊與滑動(dòng)的函數(shù)。

def click(x, y): # 點(diǎn)擊屏幕(x, y)坐標(biāo)點(diǎn)
 cmd = 'adb shell input tap {x1} {y1}'.format(x1=x, y1=y)
 os.system(cmd)
 
 
def slide(x, y, ex, ey): # 滑動(dòng)屏幕從(x, y)坐標(biāo)點(diǎn)到(ex, ey)坐標(biāo)點(diǎn)
 print("滑動(dòng)屏幕")
 cmd = 'adb shell input swipe {x1} {y1} {x2} {y2}'.format(x1=x, y1=y, x2=ex, y2=ey)
 os.system(cmd)
 
 
def touch(key): # 按動(dòng)相應(yīng)的按鍵
 if key == "back":
 print("> 返回按鍵")
 os.system('adb shell input keyevent 4')
 elif key == "light":
 print("> 開(kāi)屏按鍵")
 os.system('adb shell input keyevent 26')
 time.sleep(1) # 等待1s 等手機(jī)反應(yīng)

寫(xiě)一個(gè)截屏并且保存的函數(shù),以便我們之后進(jìn)階的時(shí)候會(huì)用到(入門(mén)版可跳過(guò))。

在此處這個(gè) screenshot_way 代表截屏的方式,根據(jù)手機(jī)型號(hào)的不同,截屏方式會(huì)有差別,如果你的手機(jī)不適用與此截屏方式,可在此函數(shù)中繼續(xù)增加其它的截屏方式。

screenshot_way = 2
 
 
def pull_screenshot(filename):
 '''
 獲取截屏
 '''
 global screenshot_way
 if screenshot_way == 2 or screenshot_way == 1:
 process = subprocess.Popen('adb shell screencap -p', shell=True, stdout=subprocess.PIPE)
 screenshot = process.stdout.read()
 if screenshot_way == 2:
  binary_screenshot = screenshot.replace(b'\r\n', b'\n')
 else:
  binary_screenshot = screenshot.replace(b'\r\r\n', b'\n')
 f = open(filename, 'wb')
 f.write(binary_screenshot)
 f.close()
 elif screenshot_way == 0:
 os.system('adb shell screencap -p /sdcard/'+filename)
 os.system('adb pull /sdcard/'+filename+' .')

因?yàn)槲矣X(jué)得手機(jī)可能會(huì)息屏,所以寫(xiě)個(gè)函數(shù)判斷一下是不是黑屏(入門(mén)版可跳過(guò))。

在屏幕上平均取了100個(gè)點(diǎn)(長(zhǎng)取10份,寬取10份),判斷如果都為黑色,則為息屏狀態(tài)。

def is_black(im):
 im_pixel = im.load()
 piece_x_dilation = int(im.size[1]/10)
 piece_y_dilation = int(im.size[1]/10)
 piece_x_max = im.size[0]
 piece_y_max = im.size[1]
 for i in range(0, piece_x_max, piece_x_dilation):
 for j in range(0, piece_y_max, piece_y_dilation):
  if not im_pixel[i, j][0] == 0 or not im_pixel[i, j][1] == 0 or \
   not im_pixel[i, j][2] == 0 or not im_pixel[i, j][3] == 255:
  return False
 print("熄屏狀態(tài)...")
 return True

最后,準(zhǔn)備工作就全部完成了,主函數(shù)如下。

def main():
 '''
 主函數(shù)
 '''
 while True:
 pull_screenshot('autojump.png') # 截圖并保存為autojump.png
 im = Image.open('./autojump.png') # 打開(kāi)截圖autojump.png
 if is_black(im): # 如果沒(méi)寫(xiě)這個(gè)函數(shù)可以去掉if...一直到else
  touch('light') # 點(diǎn)亮屏幕
  slide(int(im.size[0]/2), int(im.size[1]/1.1), int(im.size[0]/2), int(im.size[1]/2)) # 因?yàn)槲业氖謾C(jī)是上滑解鎖,所以上滑了一下
 else:
  print("點(diǎn)擊進(jìn)入瀏覽")
  click(591, 783) # 這個(gè)位置是進(jìn)入“領(lǐng)喵幣”界面底下,那個(gè)“去逛逛”按鈕的位置
    # 因?yàn)槭?入門(mén)版 ,所以這個(gè)坐標(biāo)就寫(xiě)死了,是我用PS量的(手動(dòng)滑稽)
  for i in range(0, 10): # 點(diǎn)開(kāi)之后隨機(jī)向下滑動(dòng)幾下
     # 滑動(dòng)位置也有著微小的隨機(jī)變化(怕被檢測(cè)出來(lái)是機(jī)器)
  if random.random() > 0.5:
   slide(int(im.size[0]/2 - (random.random()*20) + 10),
    int(im.size[1]/1.1 - (random.random()*20) + 10),
    int(im.size[0]/2 - (random.random()*20) + 10),
    int(im.size[1]/1.1 - (random.random()*20) - 300)) # 向上稍微滑滑
  time.sleep(3) # 等待3s
  touch('back') # 返回按鍵
 time.sleep(1) # 等待1s

總結(jié)

以上所述是小編給大家介紹的使用Python刷淘寶喵幣(低階入門(mén)版),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

相關(guān)文章

最新評(píng)論

靖边县| 沅江市| 应城市| 衡阳市| 朔州市| 广河县| 阳江市| 泸西县| 五河县| 那坡县| 龙川县| 兴文县| 来宾市| 龙州县| 兰考县| 乐平市| 新干县| 封丘县| 延吉市| 宿州市| 武强县| 玉树县| 樟树市| 五台县| 攀枝花市| 宁河县| 肇源县| 福建省| 醴陵市| 阳城县| 徐闻县| 潜山县| 长宁县| 前郭尔| 邻水| 安图县| 屏边| 都江堰市| 利辛县| 延长县| 梨树县|