用Python實現定時自動化收取螞蟻森林能量,再也不用擔心忘記收取了
1. 概述
提到螞蟻森林,大家應該都知道,你是否有因忘記收取能量而被好友收取的經歷呢?
如果你不是螞蟻森林重度使用者,被別人收取了能量可能對你來說沒什麼。
但如果你是螞蟻森林重度使用者,遇到能量被偷 ...
本文我們來看一下如何使用 Python + Appium 實現定時自動化收取螞蟻森林能量。
2. 環境
本文主要環境如下:
- Win7
- 小米5s
- Python3.7
- Appium1.5
- 支付寶10.2.6.7010
如果對環境搭建不熟悉的話,可以看一下:Python + Appium 自動化操作微信入門和我用 Python 找出了刪除我微信的所有人並將他們自動化刪除了。
很多人學習python,不知道從何學起。
很多人學習python,掌握了基本語法過後,不知道在哪裡尋找案例上手。
很多已經做案例的人,卻不知道如何去學習更加高深的知識。
那麼針對這三類人,我給大家提供一個好的學習平臺,免費領取視訊教程,電子書籍,以及課程的原始碼!
QQ群:1156465813
3. 實現
功能實現的基本思路為:
- 開啟支付寶進入螞蟻森林,收取自己的能量
- 收取完自己能量後,點選找能量進入好友螞蟻森林,收取好友能量,以此類推
接下來我們看一下主要程式碼實現。
引數配置程式碼實現如下:
desired_caps = { "platformName": "Android", # 系統 "platformVersion": "8.0.0", # 系統版本號 "deviceName": "m5s", # 裝置名 "appPackage": "com.eg.android.AlipayGphone", # 包名 "appActivity": "AlipayLogin", # app 啟動時主 Activity 'noReset': True # 保留 session 資訊,可以避免重新登入 }
通常大家都會將螞蟻森林放在支付寶首頁,此時我們開啟支付寶後直接點選螞蟻森林選項即可進入。
程式碼實現如下:
driver.find_elements_by_id('com.alipay.android.phone.openplatform:id/home_app_view')[10].click()
進入自己螞蟻森林之後,開始收取自己的能量,因為新版支付寶不能定位能量球元素了,所以我們需要在能量球可能出現的區域實現點選。收取能量的程式碼實現如下:
# 收取能量 def collect_energy(driver): print('開始收取能量') # 獲取手機螢幕寬高 width = int(driver.get_window_size()['width']) height = int(driver.get_window_size()['height']) # 能量球可能出現的區域座標 start_x = 110 end_x = 940 start_y = 460 end_y = 880 for i in range(start_y, end_y, 80): for j in range(start_x, end_x, 80): tap_x1 = int((int(j) / width) * width) tap_y1 = int((int(i) / height) * height) # 點選指定座標 driver.tap([(tap_x1, tap_y1), (tap_x1, tap_y1)], 1000) print('能量收取完畢')
自己能量收取完畢之後,點選找能量
進入好友螞蟻森林繼續收取能量,程式碼實現如下:
# 找能量 def search_energy(driver): print('找能量,收取好友能量') time.sleep(3) # 點選找能量 driver.tap([(1000, 1520), (1080, 1580)], 1000) time.sleep(3) # 收取好友能量 collect_energy(driver) time.sleep(3) # 收取完畢繼續找能量 search_energy(driver)
能量收取的功能實現了之後,我們使用定時任務實現定時收取即可,下面看一下定時任務的實現。
定時任務的實現我們使用apscheduler
元件,使用之前需執行pip install apscheduler
裝一下。
定時任務的程式碼實現如下:
scheduler = BlockingScheduler() # collect_main:定時執行的方法 scheduler.add_job(collect_main, 'cron', hour=20, minute=23, second=20) try: scheduler.start() except (KeyboardInterrupt, SystemExit): pass
到此,我們利用 Python + Appium 實現定時自動化收取螞蟻森林能量的工作就完成了。
注意:如果你是打算找python高薪工作的話。我建議你多寫點真實的企業專案積累經驗。不然工作都找不到,當然很多人沒進過企業,怎麼會存在專案經驗呢? 所以你得多找找企業專案實戰多練習下撒。如果你很懶不想找,也可以進我的Python交流圈:1156465813。群檔案裡面有我之前在做開發寫過的一些真實企業專案案例。你可以拿去學習,不懂都可以在裙裡找我,有空會耐心給你解答下。
以下內容無用,為本篇部落格被搜尋引擎抓取使用
(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)
python 是幹什麼的 零基礎學 python 要多久 python 為什麼叫爬蟲
python 爬蟲菜鳥教程 python 爬蟲萬能程式碼 python 爬蟲怎麼掙錢
python 基礎教程 網路爬蟲 python python 爬蟲經典例子
python 爬蟲
(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)(* ̄︶ ̄)
以上內容無用,為本篇部落格被搜尋引擎抓取使用