python 工作自動簽到記錄

來源:互聯網
上載者:User

標籤:python

暑假開始實習,為了記錄自己每月的出勤情況,寫了一個小程式。
原理很簡單,就是 python 對文字檔和日期的處理。

main.py 程式碼如下:

# -*- coding:utf-8 -*-# author:青天訣import codecsimport datetimeimport re#讀取文字檔中的簽到記錄def readRecord(path):    with open(path,‘r+‘) as f:        f=open(path,‘r+‘)        data=f.readline()  # 讀取檔案第一行,並判斷第一行是否有隱藏的BOM_UTF8        if data[:3]==codecs.BOM_UTF8:                data=data[3:]        print data.decode("utf-8")        for data in f:            print data.decode("utf-8")#計算工作日期,和周幾def workDate(*time):    if time:        now=datetime.datetime.strptime(time[0],‘%Y-%m-%d‘)    else:        now=datetime.datetime.now()    week=now.weekday()    weeks=("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday")    now=str(now.strftime(‘%Y-%m-%d‘))    return (now,weeks[week])#計算當前工作天數(id)def workCount(file):    count = 0    for count, line in enumerate(file):        pass    count += 1    return str(count)def lastLine(file):    lines=file.readlines()    data=lines[len(lines)-1].decode(‘utf-8‘)    ary=re.split(r‘\s+‘,data)    return ary[1]#  寫入文字檔#  time格式為: 2015-7-22def writeRecord(path,*time):    with open(path,‘a+‘) as f:        count=workCount(f)        if time:            (mydate,week)=workDate(time[0])        else:            (mydate,week)=workDate()        f.seek(0)        if lastLine(f)!=mydate:            f.write(count.ljust(12)+(mydate.encode(‘utf-8‘)).ljust(16)+week.ljust(16)+‘true‘+‘\n‘)            print u"簽到完成,哈哈!"        else:            print u"請不要重複簽到!!!"writeRecord(‘record.txt‘)readRecord(‘record.txt‘)

為了每天讓程式自動完成簽到,寫了一個atuo.bat檔案,運行main.py。

e:cd E:\long\recordstart pythonw main.pyexit

然後將auto.bat發送捷徑到案頭,然後將捷徑添加到開機啟動目錄

添加時,需要找到啟動的目錄,對著啟動 右擊 》屬性 》常規,位置那裡就是啟動所在目錄,開啟後,將auto.bat的捷徑複製到目錄下,就會在開機時自動運行這個bat檔案了。

添加捷徑後,啟動裡就會出現我們複製進去的捷徑,如:

PS:main.py 程式添加了判斷,每天只會簽到一次,就算電腦每天重啟幾次,也不會被重複簽到的,放心使用了。

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

python 工作自動簽到記錄

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.