adb命令模拟手机钉钉打卡(不修改定位)

模拟手机钉钉自动打卡,此方式不存在修改定位之类的,定时运行windows任务。代码内设置了随机延时1-10分钟,避免每次打卡时间过于雷同。

环境要求
1 钉钉升级了专业版(可以登录2台手机,另外一台其实可登可不登,下班了基本不管钉钉消息,根据自己的需求来)
2 打卡手机:设置自动打卡,并设置好时间,如:上班前15分钟,下班后5分钟自动打卡。取消锁屏密码,不相关的软件都卸载了,长期放公司。
3 日常手机:禁用了钉钉定位权限,下班了偶尔收下钉钉消息
python的环境需要自行配置,测试没问题后,设置一个windows定时任务即可,后续有空会补上这一部分。代码比较简单,未设置错误处理和日志,初学者也可以很容易看明白,基本上长期稳定。
注意:此代码为iqoo手机,不同品牌手机adb命令可能有所不同,如无法使用,请调整相关代码
完整代码

import subprocess
import time
import random
def run_cmd_Popen_fileno(cmd_string):
    """
    执行cmd命令,并得到执行后的返回值,python调试界面输出返回值
    :param cmd_string: cmd命令,如:'nvcc -V'
    :return:*'
    """
    time.sleep(2)
    print('运行cmd指令:{}'.format(cmd_string))
    return subprocess.Popen(cmd_string, shell=True, stdout=None, stderr=None).wait()
run_cmd_Popen_fileno('adb devices')
run_cmd_Popen_fileno('adb shell input keyevent 82')   # 点亮屏幕
run_cmd_Popen_fileno('adb shell input swipe 500 1200 500 50')   # 滑动一定距离解锁,未设置锁屏密码
run_cmd_Popen_fileno('adb shell am start com.bbk.launcher2/.Launcher') # 返回主界面
time.sleep(3)
t = random.randint(0,601) # 0-600之间随机选取一个数,单位为秒
run_cmd_Popen_fileno('adb shell cmd location set-location-enabled true')  # 打开gps定位
time.sleep(t)  # 延时上面选择的随机数
run_cmd_Popen_fileno('adb shell am start com.alibaba.android.rimet/.biz.LaunchHomeActivity') # 打开钉钉
time.sleep(10)  
run_cmd_Popen_fileno('adb shell am start com.bbk.launcher2/.Launcher') # 退回主界面
time.sleep(3)
run_cmd_Popen_fileno('adb shell cmd location set-location-enabled false') # 关闭gps定位
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值