脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - 用python基于appium模块开发一个自动收取能量的小助手

用python基于appium模块开发一个自动收取能量的小助手

2022-01-11 00:25顾木子吖 Python

大家都有了解过蚂蚁森林吧,本篇文章带给你自动收取蚂蚁森林能量的思路与方法,基于appium模块开发一个自动收取能量的小助手,本文给大家介绍的非常详细,对大家的学习或工作具有一定的价值

导语

用python基于appium模块开发一个自动收取能量的小助手

昨天楼下买东西,超市老板居然让我加他支付宝好友????

嗯哼!对啦,我也很疑惑来着!!

当时以为是方便下次买东西,哦吼也没多想,早上起来睁着我睡眼惺忪的熊猫眼,完了,我的能量都被偷完了!

对!今天木木子教大家种“树”用python基于appium模块开发一个自动收取能量的小助手!大家还记得蚂蚁森林叭,轻轻松松手机上就可以种树了!

用python基于appium模块开发一个自动收取能量的小助手

正文

本文是基于appium模块开发的自动收取能量的小助手!

参数配置如下:

desired_caps = {
    "platformName": "Android", # 系统
    "platformVersion": "8.0.0", # 系统版本号
    "deviceName": "m5s", # 设备名
    "appPackage": "com.eg.android.AlipayGphone", # 包名
    "appActivity": "AlipayLogin", # app 启动时主 Activity
    "noReset": True # 保留 session 信息,可以避免重新登录
}

链接手机收取能量:

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)

开始执行定时任务:​

def collect_main():
    print("开始执行定时任务")
    driver = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps)
    time.sleep(15)
    # 进入自己蚂蚁森林
    driver.find_elements_by_id("com.alipay.android.phone.openplatform:id/home_app_view")[10].click()
    time.sleep(5)
    collect_energy(driver)
    search_energy(driver)
 
if __name__ == "__main__":
    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基于appium模块开发一个自动收取能量的小助手

总结

聚沙成塔、木木为森,每个人都从生活里的点滴小事做起,千万人的一举一动汇聚起来,就能让环境、让地球变得越来越好!

你们的支持是我最大的动力!!

用python基于appium模块开发一个自动收取能量的小助手

到此这篇关于用python基于appium模块开发一个自动收取能量的小助手的文章就介绍到这了,更多相关python appium 自动收能量内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_55822277/article/details/120453926

延伸 · 阅读

精彩推荐