本篇內(nèi)容介紹了“怎么使用python代碼實(shí)現(xiàn)釘釘自動(dòng)打卡”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
專業(yè)從事網(wǎng)站建設(shè)、網(wǎng)站制作,高端網(wǎng)站制作設(shè)計(jì),重慶小程序開(kāi)發(fā),網(wǎng)站推廣的成都做網(wǎng)站的公司。優(yōu)秀技術(shù)團(tuán)隊(duì)竭力真誠(chéng)服務(wù),采用H5網(wǎng)站設(shè)計(jì)+CSS3前端渲染技術(shù),成都響應(yīng)式網(wǎng)站建設(shè)公司,讓網(wǎng)站在手機(jī)、平板、PC、微信下都能呈現(xiàn)。建站過(guò)程建立專項(xiàng)小組,與您實(shí)時(shí)在線互動(dòng),隨時(shí)提供解決方案,暢聊想法和感受。
準(zhǔn)備環(huán)境
Android 手機(jī)一部(我用的華為榮耀10)
adb 工具包,下載安裝包并配置環(huán)境變量
python3環(huán)境
安裝adb 配置環(huán)境變量
下載adb : 網(wǎng)上太多了,找一個(gè)就好了,我要和時(shí)間賽跑 (> _ <……)
配置環(huán)境變量: 這個(gè)是基礎(chǔ),python環(huán)境配置我都不打算在這里說(shuō)的,adb配置好adb --version 檢查下
設(shè)置手機(jī)
數(shù)據(jù)線連接電腦 ,手機(jī)打開(kāi)開(kāi)發(fā)者模式,輸入 adb devices,出現(xiàn)下圖就是連接上手機(jī)了
手機(jī)進(jìn)行設(shè)置,在開(kāi)發(fā)者模式里找到指針位置選項(xiàng),并打開(kāi),是為了獲取點(diǎn)位信息的
寫(xiě)腳本
在寫(xiě)之前需要了解adb常用命令
a,adb shell input keyevent 224 # 電源
b,adb shell input tap 647 1685 # 點(diǎn)擊事件
c,adb shell input swipe 747 1413 747 323 # 滑動(dòng)事件
d,adb shell am force-stop com.alibaba.android.rimet 關(guān)掉釘釘進(jìn)程
導(dǎo)入需要用的包
import os import time
手動(dòng)操作一遍沒(méi)記錄每一步的x,y的點(diǎn)位,再用python寫(xiě)出來(lái)
def daka(): print(os.system('adb shell input keyevent 224')) # 打開(kāi)電源鍵 time.sleep(3) print(os.system('adb shell input tap 647 1685 ')) # 點(diǎn)擊釘釘應(yīng)用位置 time.sleep(3) print(os.system('adb shell input tap 528 2190 ')) # 點(diǎn)擊釘釘菜單 time.sleep(3) print(os.system('adb shell input swipe 747 1413 747 323')) # 上滑找考勤打卡程序 time.sleep(3) print(os.system('adb shell input tap 910 1011 ')) # 點(diǎn)擊考勤打卡 time.sleep(3) """
這個(gè)就是要寫(xiě)打開(kāi)的操作了,我不能打卡,我還要加班,省的人事小姐姐找我喝咖啡,很簡(jiǎn)單,這一步自己寫(xiě)吧,**我跳過(guò)**
""" print(os.system('adb shell am force-stop com.alibaba.android.rimet')) # 操作打卡完成后關(guān)閉釘釘應(yīng)用 pass
怎么查看包名
adb shell am monitor 然后在手機(jī)打開(kāi)應(yīng)用即可
截圖真費(fèi)時(shí)間,感覺(jué)時(shí)間快不夠了,要不我一會(huì)錄屏吧…………額 好像已經(jīng)搞定了 …………
隨便寫(xiě)個(gè)定時(shí)器吧,你們可以自己優(yōu)化下定時(shí)器哦,我寫(xiě)的比較糙咯……
""" 定義個(gè)返回秒的函數(shù)""" def sleeptime(hour, min, sec): return hour * 3600 + min * 60 + sec # 設(shè)置自動(dòng)執(zhí)行間隔時(shí)間,我這里設(shè)置時(shí)間,啊!現(xiàn)在是凌晨12點(diǎn)整了,早上9點(diǎn)上班那我就先讓下次是8小時(shí)候執(zhí)行吧 second = sleeptime(8, 0, 0) # 來(lái)個(gè)暴力的死循環(huán) while 1 == 1: # 延時(shí) time.sleep(second) # 執(zhí)行 daka() 來(lái)個(gè)代碼總結(jié) # -*- coding: utf-8 -*- ''' @Created on 2019/12/20 @Author : Pa Lengderen ''' # 引入time包 import os import time def daka(): print(os.system('adb shell input keyevent 224')) # 電源鍵 time.sleep(3) print(os.system('adb shell input tap 647 1685 ')) # 點(diǎn)擊釘釘應(yīng)用 time.sleep(3) print(os.system('adb shell input tap 528 2190 ')) # 點(diǎn)擊菜單 time.sleep(3) print(os.system('adb shell input swipe 747 1413 747 323')) # 上滑 time.sleep(3) print(os.system('adb shell input tap 910 1011 ')) # 點(diǎn)擊考勤打卡 time.sleep(3) print(os.system('adb shell am force-stop com.alibaba.android.rimet')) pass # 函數(shù)定義 def sleeptime(hour, min, sec): print(hour * 3600 + min * 60 + sec) return hour * 3600 + min * 60 + sec # 設(shè)置自動(dòng)執(zhí)行間隔時(shí)間,我這里設(shè)置的2s second = sleeptime(0, 0, 10) # 死循環(huán) while 1 == 1: # 延時(shí) time.sleep(second) # 執(zhí)行 daka()
“怎么使用python代碼實(shí)現(xiàn)釘釘自動(dòng)打卡”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!