使用Python实现企业微信的自动打卡功能


Posted in Python onApril 30, 2019

上下班打卡是程序员最讨厌的东西,更讨厌的是设置了连上指定wifi打卡。

手机上有一些定时机器人之类的app,经过实际测试,全军覆没,没一个可以活着走到启动企业微信的这一步,所以还是靠自己吧。

下面就通过Python程序来实现自动打卡,原理很简单,用Python设置定时任务,然后通过adb操作手机,完成打卡。

1、准备工作

a、安装了Python,ADB驱动(安装方式及下载地址见之前文章)的电脑一台;常驻在公司的测试机一台;数据线一条。

b、将手机通过数据线连接电脑,打开开发者选项中的允许USB调试,然后命令行运行adb devices来测试下是否能显示设备,ok则准备工作完毕。

2、实现代码

#本手机安装了企业微信分身,可以打两个人的卡
# coding: utf-8
import os
import sys
import time
import schedule
import requests

def click():
 #打第一个卡
 os.system('adb shell input keyevent 82')#点亮屏幕
 time.sleep(1)
 os.system('adb shell input keyevent 3')#单击home键,回到主页
 time.sleep(1)
 os.system('adb shell input swipe 500 300 300 300')#左划屏幕
 time.sleep(1)
 os.system('adb shell input swipe 500 300 300 300')#左划屏幕
 time.sleep(2)
 os.system('adb shell input tap 920 800')#点击企业微信
 time.sleep(5)
 os.system('adb shell input tap 678 1820')
 time.sleep(5)
 os.system('adb shell input tap 410 330')
 time.sleep(10)
 os.system('adb shell input tap 540 1340')
 time.sleep(5)
 #打第二个卡
 os.system('adb shell input keyevent 3')
 time.sleep(1)
 os.system('adb shell input swipe 500 300 300 300')
 time.sleep(1)
 os.system('adb shell input swipe 500 300 300 300')
 time.sleep(2)
 os.system('adb shell input tap 660 1100')
 time.sleep(5)
 os.system('adb shell input tap 678 1820')
 time.sleep(5)
 os.system('adb shell input tap 410 330')
 time.sleep(10)
 os.system('adb shell input tap 540 1340')
 time.sleep(5)
 #推送消息给微信,此处可以删除,仅为通知
 url = 'http://wxmsg.dingliqc.com/send?msg=打卡成功&userIds=自己微信的uid'
 requests.get(url)
 sys.exit()
def main():
 '''
 主函数
 '''
 schedule.every().day.at('18:03').do(click)
 while True:
  schedule.run_pending()
  time.sleep(3)
if __name__ == '__main__':
 main()

关于代码中涉及到的坐标点,可以通过手机页面截图,放到电脑里编辑图片来查看触摸点的坐标值,跟机型和分辨率有关,需要针对自己的手机调试,sleep的时间根据手机性能,网络环境可以做优化,然后运行代码就行了。想后台运行的话

start /b python startwork.py

当然,最重要的一点,电脑要保持24H开机,程序员不担心这个,因为真正的程序员从不关机。

总结

以上所述是小编给大家介绍的使用Python实现企业微信的自动打卡功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
Feb 24 Python
Python入门篇之列表和元组
Oct 17 Python
python实现获取客户机上指定文件并传输到服务器的方法
Mar 16 Python
python文件特定行插入和替换实例详解
Jul 12 Python
解决已经安装requests,却依然提示No module named requests问题
May 18 Python
python版opencv摄像头人脸实时检测方法
Aug 03 Python
详解将Django部署到Centos7全攻略
Sep 26 Python
Python字典底层实现原理详解
Dec 18 Python
如何清空python的变量
Jul 05 Python
使用Python文件读写,自定义分隔符(custom delimiter)
Jul 05 Python
Python Charles抓包配置实现流程图解
Sep 29 Python
使用sublime text3搭建Python编辑环境的实现
Jan 12 Python
Python/Django后端使用PIL Image生成头像缩略图
Apr 30 #Python
Python3.5迭代器与生成器用法实例分析
Apr 30 #Python
python使用Paramiko模块实现远程文件拷贝
Apr 30 #Python
Django学习笔记之为Model添加Action
Apr 30 #Python
Python Opencv实现图像轮廓识别功能
Mar 23 #Python
python opencv实现图像边缘检测
Apr 29 #Python
Python Django给admin添加Action的方法实例详解
Apr 29 #Python
You might like
PHP的面试题集,附我的答案和分析(一)
2006/11/19 PHP
PHP设计模式之装饰者模式
2012/02/29 PHP
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
ThinkPHP模板判断输出Present标签用法详解
2014/06/30 PHP
php生成与读取excel文件
2016/10/14 PHP
thinkPHP实现的省市区三级联动功能示例
2017/05/05 PHP
Gird事件机制初级读本
2007/03/10 Javascript
爱恋千雪-US-AscII加密解密工具(网页加密)下载
2007/06/06 Javascript
详解强大的jQuery选择器之基本选择器、层次选择器
2012/02/07 Javascript
面向对象继承实例(a如何继承b问题)(自写)
2013/07/01 Javascript
中止javascript执行的方法
2014/02/14 Javascript
JavaScript函数作用域链分析
2015/02/13 Javascript
浅析javascript中的DOM
2015/03/01 Javascript
给easyui的datebox控件添加清空按钮的实现方法
2016/11/09 Javascript
Bootstrap源码解读下拉菜单(4)
2016/12/23 Javascript
JAVA中截取字符串substring用法详解
2017/04/14 Javascript
用node-webkit把web应用打包成桌面应用(windows环境)
2018/02/01 Javascript
解决JavaScript中0.1+0.2不等于0.3问题
2018/10/23 Javascript
JS实现头条新闻的经典轮播图效果示例
2019/01/30 Javascript
nodejs微信开发之接入指南
2019/03/17 NodeJs
如何基于JavaScript判断图片是否加载完成
2019/12/28 Javascript
使用python解析xml成对应的html示例分享
2014/04/02 Python
python通过wxPython打开一个音频文件并播放的方法
2015/03/25 Python
python基于隐马尔可夫模型实现中文拼音输入
2016/04/01 Python
python 查找文件名包含指定字符串的方法
2018/06/05 Python
Python使用random.shuffle()打乱列表顺序的方法
2018/11/08 Python
Python中format()格式输出全解
2019/04/12 Python
对DJango视图(views)和模版(templates)的使用详解
2019/07/17 Python
python代码实现TSNE降维数据可视化教程
2020/02/28 Python
使用Python3 poplib模块删除服务器多天前的邮件实现代码
2020/04/24 Python
马来西亚时装购物网站:ZALORA马来西亚
2017/03/14 全球购物
2014政务公开实施方案
2014/02/19 职场文书
作文评语怎么写
2014/12/25 职场文书
紧急迫降观后感
2015/06/15 职场文书
2015年“我们的节日·中秋节”活动总结
2015/07/30 职场文书
一文了解MySQL二级索引的查询过程
2022/02/24 MySQL