介绍
本篇文章为大家展示了利用Python怎么实现一个企业微信自动打卡功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
工具准备
- <李>
不用说的Python
李> <李>一部24小时可以放公司的安卓手机或电脑安装模拟器
李> <李>亚行工具
李>2亚行的安装配置
去下载亚行安装包,安装后在环境变量路径中添加目录
2.1 UIautomator2的安装
#,安装,UIautomator2 (PC端) pip3 install  -U uiautomator2
3手机连接电脑
<强> 3.1手机强>
如果使用的是手机,需要手机开启”开发者选项“模式,然后USB调试打开,将USB插入电脑
命令行输入
adb 设备
检测手机是否连接成功
下面这样就说明成功了
然后运行
python3 -m uiautomator2 init
将atx-agent安装到手机
<强> 3.2模拟器强>
如果使用模拟器,在模拟器的设置中将亚行连接打开,同样在命令行输入<代码>亚行设备> 代码检测是否连接成功,是用模拟器的话定位位置需要更改为公司要求打卡范围内,后续步骤同上
4 webitor安装使用
为了抓取控件更方便安装weditor
pip install ——pre weditor
命令行输入
python -m weditor
在弹开的浏览器中进行操作
输入框中填入第三步得到的设备序列号,然后点击连接,正常的话会有个绿色的叶子,应用控件的信息就需要在这里拿到了
5代码开发
import uiautomator2 as u2 import 时间 得到apscheduler.schedulers.blocking import  BlockingScheduler , 时间=d u2.connect_usb (& # 39; b11b0fbe& # 39;) def click_text(自我,str,平方=0):,#对于无法直接点击的控件写了个函数 ,,路径=d(文本=str)(平方) ,,x, y=path.center () ,,d.click (x, y) def 单击(card_ty): ,,d.app_start (“com.alibaba.android.rimet"), #,启动应用 ,,time . sleep (5) ,,d(文本=肮ぷ魈ā?.click () ,,time . sleep (3) ,,d(文本=翱记诖蚩ā?.click () ,,time . sleep (3) ,,d(滚动=True) .fling.toEnd () ,,click_text (d, card_ty, 1) ,,time . sleep (3) ,,d.screenshot (“11. jpg") ,,d.push (“11. jpg",,“/sdcard/0/11.jpg") ,,d.app_stop (“com.alibaba.android.rimet") ,,send_info () def send_info(): #将打卡信息截图利用小号发送给自己大号 ,,d.app_start (“com.tencent.mm"), #,启动应用 ,,time . sleep (5) ,,click_text (d,“通讯录“) ,,click_text (d,“打卡“) ,,click_text (d,“发消息“) ,,time . sleep (2) ,,d(描述=案喙δ馨磁?已折叠“).click () ,,time . sleep (2) ,,d.swipe (1000,, 1450,, 100,, 1450) ,,time . sleep (2) ,,click_text (d,“文件“) ,,time . sleep (2) ,,click_text (d,“微信文件“,1) ,,click_text (d,“手机存储“) ,,click_text (d,“0”) ,,d (resourceId=癱om.tencent.mm: id/cvh") .click () ,,d(文本=胺⑺?1/9)“).click () ,,d(文本=案笥蚜粞浴?.click () ,,d.send_keys(“今日打卡记录,请注意查收,,,明确=True) ,,d(文本=胺⑺汀?.click () ,,time . sleep (5) ,,d.app_stop (“com.tencent.mm") , def job1 (): ,,点击(“上班打卡“) def job2 (): ,,点击(“下班打卡“),,,, if __name__ ==,“__main__": ,,sched =, BlockingScheduler(), #设置定时任务,周一至周五,上午8.50自动打上班卡,下午6.10自动打下班卡 ,,sched.add_job (job1, & # 39; cron # 39;,, day_of_week=& # 39; mon-fri& # 39;,,小时=& # 39;8 & # 39;,minute =& # 39; 50 & # 39;) ,,sched.add_job (job2, & # 39; cron # 39;,, day_of_week=& # 39; mon-fri& # 39;,,小时=& # 39;18 & # 39;,minute =& # 39; & # 39; 10) ,,sched.start ()利用Python怎么实现一个企业微信自动打卡功能