點(diǎn)擊“開發(fā)者技術(shù)前線”,選擇“星標(biāo)?”
作者 |?鍋g頭
來源 |?Crossin的編程教室
最近在家遠(yuǎn)程工作,結(jié)果作息更混亂了
,早上起不來,導(dǎo)致我螞蟻森林能量天天被偷,嚴(yán)重影響我沙漠造樹“大業(yè)”
。于是我決定用python寫個(gè)自動(dòng)偷能量的程序,每天早上定時(shí)偷取好友能量,“稱霸”螞蟻森林。本文僅為自動(dòng)化測試技術(shù)研究,請勿濫用!首先需要安裝配置好appium自動(dòng)化測試工具。appium是一個(gè)開源、跨平臺的測試框架,可以用來測試原生及混合的移動(dòng)端應(yīng)用,支持IOS、Android及FirefoxOS平臺。大致流程:先在官網(wǎng)(appium.io)下載安裝appium,然后安裝Android SDK(我的方法是安裝Android Studio,在它里面可以安裝Android SDK),最后再安裝JAVA,并配置JAVA_HOME和CLASSPATH兩個(gè)參數(shù)的環(huán)境變量,然后就可以使用appium啦!安裝appium有兩個(gè)目的,一是使用python的appium模塊需要先打開appium客戶端,否則無法使用;二是便于我們查找某個(gè)app某個(gè)界面的元素,初次打開時(shí)如圖所示:點(diǎn)擊Start Server v1.8.1配置好4個(gè)參數(shù),第一個(gè)參數(shù)是手機(jī)操作系統(tǒng),第二個(gè)參數(shù)是手機(jī)型號,在設(shè)置中可以找到,第三、四參數(shù)是app的兩個(gè)特定值,點(diǎn)擊start session就可以操控手機(jī)了。第一步:appium自動(dòng)化測試app首先需要找到 ‘appPackage’ 和 ‘appActivity’ 兩個(gè)參數(shù)這里給大家介紹一種通用的找手機(jī)app這兩個(gè)參數(shù)的方法:1. 先找到獲取apk信息工具(android SDK的aapt工具)所在的位置;在輸出信息中可以找到‘a(chǎn)ppPackage’和‘a(chǎn)ppActivity’的值:
第二步:打開支付寶,模擬點(diǎn)擊,進(jìn)入螞蟻森林界面
正常情況下,appium操控打開app時(shí),需要配置一下參數(shù):但是這種配置方式會默認(rèn)從頭打開app,需要驗(yàn)證各種信息,而且需要重新登錄,今天教大家如何避免重新登錄,只需添加2個(gè)參數(shù)就ok:下面就是模擬點(diǎn)擊元素操作了,找app元素的方法如下:只需用客戶端appium打開手機(jī)APP,然后將鼠標(biāo)放在需要點(diǎn)擊的部位,在右側(cè)就能找到該部位的元素了。然后依次點(diǎn)擊下圖按鈕:第三步:依次點(diǎn)擊進(jìn)入好友螞蟻森林主頁如圖所示,我需要點(diǎn)擊一次點(diǎn)擊進(jìn)入每個(gè)好友的主頁,我采取的方式是只點(diǎn)擊進(jìn)入第一個(gè)框所在的坐標(biāo),然后模擬向上滑動(dòng)1個(gè)框的高度,這樣依次就可以點(diǎn)擊到每個(gè)好友了,代碼如下:需要注意的是,個(gè)人的主頁是點(diǎn)不開的,但是不用做相應(yīng)處理,因?yàn)辄c(diǎn)不進(jìn)去就會在當(dāng)前界面進(jìn)行檢測,判作無能量球,繼續(xù)滑動(dòng)到下一個(gè)。經(jīng)過分析元素,螞蟻森林主頁可以分為2類情況,第一種是沒有能量球,第二種是有能量球,判斷方法是比較上圖中classname的數(shù)量,若大于5則代表有能量球,反之則沒有,代碼如下:然后再進(jìn)一步分析能力球能否能收取,很簡單,只需要判斷每個(gè)classname的text是否含有“能量”這2個(gè)字就ok了,因?yàn)椴豢墒杖〉哪芰壳虿缓@兩個(gè)字,代碼如下:為了防止有的能量沒到時(shí)間,到最后一個(gè)好友時(shí),需要返回頂端重新開始檢測,我采取的方式是連續(xù)點(diǎn)擊兩次左上角的返回鍵,然后再重復(fù)上述的點(diǎn)擊“查看更多好友”步驟,代碼如下:彩蛋:源碼我已經(jīng)打包好了,可加助理微信回復(fù)“螞蟻”獲取源碼
有多少人打著收能量的旗號和暗戀的人互動(dòng)?可以掃碼加我微信,大量Python,和AI相關(guān)資源,歡迎加我交流
- EOF -
前線推出學(xué)習(xí)交流群,加群一定要備注:研究/工作方向+地點(diǎn)+學(xué)校/公司+昵稱(如數(shù)據(jù)分析+上海+上交+可可)根據(jù)格式備注,可更快被通過且邀請進(jìn)群回復(fù)“666”領(lǐng)取一份專屬技術(shù)人學(xué)習(xí)禮包掃碼加我微信進(jìn)群,內(nèi)推和技術(shù)交流,大佬們零距離