-
钉钉自动打卡
2020-07-31 16:47:50钉钉自动打卡 采用uiautomator2库编写自动打卡 依赖以下环境 android手机一台 能adb调试的 python3环境 ''' #安装 pipinstall--upgradeweditor #安装移动端(上面安装过了这里就可以跳过) ...钉钉自动打卡+进程守护
采用uiautomator2库编写自动打卡
这只是一个半自动的定时打卡机打卡机,并不能完全解放双手,依赖电脑环境连接adb。需要解放双手的可以打住了。只为学习。可以继续接着看。如果要解放双手可以用java写成android应用 采用定时器和电话通知方式打卡。并且微信截图上报通知结果。会更加方便。
依赖以下环境
- android手机一台 能adb调试的
- python3环境
-
pip install pyinstaller 打包exe
-
安装watchdog命令 pip install watchdog 看门狗
看门狗进程守护 python实现的看门狗程序
'''# 安装
pip install --upgrade weditor
# 安装移动端(上面安装过了这里就可以跳过)
python -m uiautomator2 init
# 启动
python -m weditor
'''
# coding: utf-8 import json import os import sys import uiautomator2 as u2 import time import schedule PassWord = "" Account = "" PackageName = 'com.alibaba.android.rimet' ''' # 安装 pip install --upgrade weditor # 安装移动端(上面安装过了这里就可以跳过) python -m uiautomator2 init # 启动 python -m weditor ''' def Log(txt): #pass print(txt) def Log(txt): #pass print(txt) def autoDaKa(): App = u2.connect() screen = App.info if screen["screenOn"] == False: Log('当前黑屏') App.screen_on() Log('点亮屏幕') time.sleep(3) Log('解锁') App.swipe_points([(0.485, 0.708), (0.481, 0.286)], 0.05) # 滑动解锁界 time.sleep(2) App.app_stop(PackageName) Log('启动钉钉') App.app_start(PackageName) time.sleep(2) #检查当前activity isExits = App(resourceId="com.alibaba.android.rimet:id/ll_pwd_login_mode").exists if isExits: Log('开始登陆') #执行钉钉登陆 App.set_fastinput_ime(True) App(resourceId="com.alibaba.android.rimet:id/et_phone_input").set_text(Account) time.sleep(1) App(resourceId="com.alibaba.android.rimet:id/et_pwd_login").set_text(PassWord) App.set_fastinput_ime(False) App.press("back") App(resourceId="com.alibaba.android.rimet:id/tv").click() time.sleep(3) else: Log('已经登陆') #等待主界面10秒 App.wait_activity(".LaunchHomeActivity", timeout=2) # default timeout 10.0 seconds Log("打开工作台") App(resourceId="com.alibaba.android.rimet:id/home_bottom_tab_button_work").click() time.sleep(1) Log("打开考勤") App.xpath('//*[@text="考勤打卡"]').click() time.sleep(2) #判断时间 是上午还是下午 # 范围时间 start_time = datetime.datetime.strptime(str(datetime.datetime.now().date()) + '8:00', '%Y-%m-%d%H:%M') # 开始时间 end_time = datetime.datetime.strptime(str(datetime.datetime.now().date()) + '10:00', '%Y-%m-%d%H:%M') now_time = datetime.datetime.now() if start_time < now_time < end_time: Log('上班打卡') App.xpath('//*[@text="上班打卡"]').click() else: Log('下班班打卡') App.xpath('//*[@text="下班打卡"]').click() time.sleep(2) Log("打开完毕") #关闭钉钉 App.app_stop(PackageName) #手机关屏 App.screen_of(); if __name__ == "__main__": schedule.every().day.at("09:40").do(autoDaKa) schedule.every().day.at("20:01").do(autoDaKa) while True: schedule.run_pending() time.sleep(1)
-
autojs钉钉自动打卡
2019-11-27 13:44:20通过macrodroid调用autojs实现钉钉自动打卡,并通过server酱微信平台发送消息到微信 -
钉钉自动打卡app
2019-07-11 11:22:34钉钉自动打卡的一个小app,设置很简单,打开后设置时间,闹钟自动打开钉钉进行操作 -
定时达人 钉钉自动打卡_钉钉自动打卡(家校打卡,寒假特辑)
2021-01-17 12:10:18这个寒假漫长而无奈,5:55之前打卡总感觉不舒服,我利用xposed edge pro进行打卡,经测试稳定有效。一;在手机(仅限安卓)部署好:magisk(supersu)xposed(edxposed,太极阳)下载安装edge pro(以上均能在酷安找到...这个寒假漫长而无奈,5:55之前打卡总感觉不舒服,我利用xposed edge pro进行打卡,经测试稳定有效。
一;在手机(仅限安卓)部署好:magisk(supersu)
xposed(edxposed,太极阳)
下载安装edge pro
(以上均能在酷安找到详细过程)
二:手势录制
录制技巧:把按键中的音量加点击设置为手势录制
开始录制
1:录制解锁手势(大部分手机有密码,按锁屏键亮屏后按音量加开始录制,进入桌面再按一次音量加自动保存)
2:录制打卡手势步骤同上
(不连着录制的原因是怕一些原因影响,分步录制可调性强)
设置多重动作,如图即可(根据手机性能调节延时时间)
(我设置的录屏是为了看一看效果,可不设置录屏)
手势录制界面
效果如下
https://www.zhihu.com/video/1213358493199134720禁止转载
-
Python-基于触动精灵的钉钉自动打卡脚本
2019-08-12 05:38:38基于触动精灵的钉钉自动打卡脚本 -
【黑科技】钉钉自动打卡
2017-08-11 15:37:10钉钉自动打卡所需环境:
1、JDK
2、Android SDKimport java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Timer; import java.util.TimerTask; public class DDingAutoClock { public static void main(String[] args) { Timer timer = new Timer(); timer.schedule(new Task(), 60 * 1000); } static class Task extends TimerTask { public void run() { String str = getCurrentTime(); if(str.equals("08:00")){ System.out.println("定时任务执行"); //启动叮叮 try { execCommand("adb wait-for-device"); execCommand("adb shell am start -n com.alibaba.android.rimet/com.alibaba.android.rimet.biz.SplashActivity"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } public static String getCurrentTime(){ SimpleDateFormat formatter = new SimpleDateFormat ("HH:mm"); Date curDate = new Date(System.currentTimeMillis());//获取当前时间 String str = formatter.format(curDate); System.out.println(str); return str; } public static void execCommand(String command) throws IOException { // start the ls command running //String[] args = new String[]{"sh", "-c", command}; Runtime runtime = Runtime.getRuntime(); Process proc = runtime.exec(command); //这句话就是shell与高级语言间的调用 //如果有参数的话可以用另外一个被重载的exec方法 //实际上这样执行时启动了一个子进程,它没有父进程的控制台 //也就看不到输出,所以我们需要用输出流来得到shell执行后的输出 InputStream inputstream = proc.getInputStream(); InputStreamReader inputstreamreader = new InputStreamReader(inputstream); BufferedReader bufferedreader = new BufferedReader(inputstreamreader); // read the ls output String line = ""; StringBuilder sb = new StringBuilder(line); while ((line = bufferedreader.readLine()) != null) { //System.out.println(line); sb.append(line); sb.append("\n"); } //使用exec执行不会等执行成功以后才返回,它会立即返回 //所以在某些情况下是很要命的(比如复制文件的时候) //使用wairFor()可以等待命令执行完成以后才返回 try { if (proc.waitFor() != 0) { System.out.println(proc.exitValue()); } } catch (InterruptedException e) { System.err.println(e); } } }
-
python编写 钉钉自动 打卡脚本
2019-07-03 10:52:29python编写 钉钉自动 打卡脚本 安卓 开启开发者模式 -> USB 调试 ADB 安装(shell控制用来调试手机) 开启指针位置 -> 开发者模式 adb shell input tap 433 1639 模拟点击当前坐标 Y X 引入 python import ...python编写 钉钉自动 打卡脚本
安卓
- 开启开发者模式 -> USB 调试
- ADB 安装(shell控制用来调试手机)
- 开启指针位置 -> 开发者模式
adb shell input tap 433 1639
模拟点击当前坐标 Y X
引入 pythonimport os
执行命令 (windows 需要要配置环境变量 )
记录当前的 点击位置 然后用点击调试adb shell input tap
电源键adb shell input keyevent 224
屏幕滑动 解锁adb shell input swipe 300 2000 300 600
#!/usr/bin/python import time import os print(os.system('adb shell input keyevent 224 ')) ; print(os.system('adb shell input swipe 300 2000 300 600 ')) ; print(os.system('adb shell input tap 433 1639 ')) ; print(os.system('adb shell input tap 978 2067 ')) ; print(os.system('adb shell input tap 978 2067 ')) ; print(os.system('adb shell input tap 679 2056 ')) ; print(os.system('adb shell input tap 1055 2270 ')) ; print(os.system('adb shell input tap 1323 818 ')) ; time.sleep(4) print(os.system('adb shell input tap 680 2372 ')) ; time.sleep(4) print(os.system('adb shell input tap 196 1561 ')) ; time.sleep(2) print(os.system('adb shell input tap 684 1159 ')) ;
-
python钉钉自动打卡怎么设置_几行python代码实现钉钉自动打卡,网友:终于告别缺勤了...
2020-12-22 17:14:12前言众所周知因为疫情的原因大家都没有办法上学和上班,“钉钉”这个app起到...为什么要写钉钉打卡?其实我是个早起早睡的乖宝宝,所以我是用不上的,至于为什么要写这个脚本,其实是因为我在加班,工作干完了,还有10分... -
python实现钉钉自动打卡
2019-12-20 22:41:14钉钉自动打卡脚本 1, 为什么要写钉钉打卡? 其实我是个早起早睡的乖宝宝,所以我是用不上的,至于为什么要写这个脚本,其实是因为我在加班,工作干完了,还有10分钟可以下班,那就利用10分钟(装)个(个)习(B)。废话... -
钉钉自动打卡-智能填表
2020-07-20 22:01:08安徽高校钉钉自动打卡前言准备工作开始操作注意事项整合和进一步规范与示例总结学习总结 前言 有时候凌晨12点后钉钉不能打卡而1-2点又能打卡了,早上又起不来,很尴尬. 屁话少说,直接开干。 准备工作 adb下载 下载adb... -
python 钉钉自动签到_用Python来实现钉钉自动打卡并发送邮件短信提醒
2020-11-28 13:32:56用Python来实现钉钉自动打卡并发送邮件短信提醒自从用钉钉打卡,老忘记打,只会python语言,所以用Python写了一个自动跑的脚本,每天定时跑。这样就避免忘记了。之后把adb.exe所在的文件夹配置到Path环境变量中:... -
Android 实现钉钉自动打卡
2019-08-15 10:09:06废话不说,直接进入正题。 ...2.设置钉钉上下班自动打卡的功能,手机设置不锁屏(锁屏了就无法启动钉钉的自动打卡功能了) 实现: 写一个简单的app,注册静态广播监听特定手机的来电(防止其... -
实现点击打卡_玩转钉钉自动打卡,从此告别迟到早退
2021-01-12 04:22:29如果你公司是采用的钉钉打卡,你是否烦恼经常忘记打卡,公司制度大家都也知道,没打卡就算自己的,毕竟公司一律以打卡数据统计,所以需要这款钉钉自动打卡方案,经过测试许多机型,我都是稳定自动打卡一个月啦,再也... -
钉钉自动打卡配置文件_钉钉怎么设置自动打卡?
2021-01-12 04:22:31然后我们就会看到开启以后,我们把蓝牙打开,进入公司只要经过了考勤机附近的范围,就会自动打卡了。步骤阅读7总结:1、点击打开钉钉,进入到考勤打卡界面。2、点击里面的设置按钮进入。3、选择蓝牙快捷打卡。... -
钉钉自动打卡软件,直接点+,保存(时间日期都不需要改)
2020-05-13 16:59:05钉钉自动打卡(需要开启极速打卡),在华为手机上测试,需要手机取消解锁屏幕需要输入密码或滑动(一般在开发者选项里,如果没有就把手机设置为屏幕常亮不锁屏),设置为8:30-9:00和下午5点到7点自动打卡。... -
开维控制精灵 Ctrl.js 钉钉自动打卡
2020-02-13 18:13:14Ctrl.js 钉钉自动打卡 可能还有朋友不知道Ctrl.js如何使用,我简单介绍一下,Ctrl.js 需要在手机上下载 开维控制精灵 ,应用宝,华为应用市场等平台都可以下载,帮助文档的话可以登录 ... -
python3+uiautomator2实现钉钉自动打卡并微信发送打卡截图
2019-06-18 11:55:01python3+uiautomator2实现钉钉自动打卡,QQ群交流 822659419 # !/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/06/11 16:34 # @Author : huangpeng # @Site : # @File : AutoClock.py # @... -
钉钉自动打卡并微信通知打卡成功
2019-03-16 15:02:41关于自动打卡 因为公司经常性的加班,然后第二天上班会迟到,想着使用一台手机放在公司,然后每天自动打卡,并且使用微信进行通知我是否打卡成功。 逻辑设计 1、运行脚本 2、对比当前时间与设置的打卡时间 3、符合... -
使用autojs完成一个钉钉自动打卡的小脚本
2021-02-26 10:22:32使用autojs完成一个钉钉自动打卡的小脚本 ** 前言 这是假期闲着无聊写的,就看了一会视频剩下都是自己摸索的。有好多专业的方法我都没用,大部分都是用基于坐标的方法点击的。觉得我代码太菜不要来骂我,球球大家,... -
Android实现钉钉自动打卡功能(AccessibilityService版本)
2018-07-30 12:08:34Android实现钉钉自动打卡功能(AccessibilityService版本) =============================================== 目录 [TOC] 为什么要做这个项目? 有天早晨下大雨,小编虽然出门早却还是路上堵的迟到了,心中一句XXX崩腾... -
python钉钉自动打卡_Python实现i人事自动打卡
2020-12-03 23:33:09我司使用的打卡软件是 i 人事,不过我这记性,经常漏了打卡签退,定了闹钟都会忘,今天又被老大屌了。于是准备抓一下签到接口,利用 crontab 来实现自动签到签退。环境配置这里使用的是 Fiddler 进行抓包,Fiddler ...
收藏数
115
精华内容
46
-
MySQL 高可用工具 heartbeat 实战部署详解
-
带您理解SQLSERVER是如何执行一个查询的(上)
-
skip-thoughts.torch:将The Skip-Thoughts预训练模型从Theano移植到PyTorch&Torch7-源码
-
APP为什么用JSON协议与服务端交互:序列化相关知识
-
剑指offer-2.26-24
-
【硬核】一线Python程序员实战经验分享(1)
-
DHCP 动态主机配置服务(在Linux环境下,配置单网段或跨网段提)
-
pgyer-upload.gradle
-
vue3从0到1-超详细
-
王兴:超长的直觉思维往往都是素直简单纯粹的人
-
access应用的3个开发实例
-
那晚我们分手了
-
基于石墨烯-硅异质结的高性能位置感应探测器
-
H5画布不显示图片的问题解决
-
干货丨一文带你了解灾备系统的衡量指标
-
Simulation and experimental research on polymer fiber mode selection polished coupler
-
FastDFS 分布式文件系统部署
-
owmaggrb.plb、owmaggrs.plb、owmctab.plb
-
使用@Autowired注解警告Field injection is not recommended
-
Unity 热更新技术-ILRuntime