做個釘釘小鬧鐘

0x00 前言

大致思路如下:

  1. 利用釘釘?shù)膚ebhook,結(jié)合python代碼,實(shí)現(xiàn)發(fā)消息的功能。
  2. 利用windows自動任務(wù),或linux的定時任務(wù),實(shí)現(xiàn)定時發(fā)消息的功能,做一個小鬧鐘。

參考資料
1.釘釘機(jī)器人自動提醒(python版)
2.windows上pip安裝及使用詳解
3.pyinstaller庫的安裝及打包
4.window設(shè)置定時任務(wù)執(zhí)行python腳本

0x01 python聯(lián)動釘釘發(fā)消息

網(wǎng)上找了一段簡單的python代碼(參考1),稍作修改,具體如下:

#encoding:utf-8
import json
import requests

def message():
    url = 'https://oapi.dingtalk.com/robot/send?access_token=f9100f8f1d795a24809c5efbe2f9414b0ad0d4cbe7da8ee9ef3aae90889163bb'
    pagrem = {
        "msgtype": "text",
        "text": {
            "content": "蕾姆醬提醒:下班時間到咯,請更新您的tb和提交日報(bào)。"
        },
        "at":{
            "atMobiles":[
                "1870251****","1820529****"  #需要填寫自己的手機(jī)號,釘釘通過手機(jī)號@對應(yīng)人
            ],
            "isAtAll": False   #是否@所有人,默認(rèn)否
        }
    }
    headers = {
        'Content-Type': 'application/json'
    }
    requests.post(url, data=json.dumps(pagrem), headers=headers)

if __name__ == "__main__":
    message()

其中url就是釘釘機(jī)器人的webhook地址。


在pycharm下運(yùn)行一下,可以發(fā)消息。效果如下:


補(bǔ)充
現(xiàn)在釘釘機(jī)器人多了一個安全設(shè)置,必須要勾選任意選項(xiàng)才能繼續(xù)添加機(jī)器人。以“自定義關(guān)鍵詞為例”,定義了名為“下班”的關(guān)鍵詞,那么代碼中的變量 content 的值必須包含“下班”(即提示的消息中必須包含關(guān)鍵語),才能正常推送消息。

0x02 生成exe,定時執(zhí)行

我的做法是將上述代碼打包成exe,再通過windows的計(jì)劃任務(wù)定時執(zhí)行。
打包程序用的是pyinstaller,為了方便建議使用pip來安裝pyinstaller。

如何安裝pip可以看參考2,大佬講的還是很詳細(xì)地。因?yàn)檫@代碼采用了requests模塊,所以利用pip安裝一下該模塊pip install requests。
裝完后,利用本地的python(我是win10,py2.7)跑一下上述的代碼,執(zhí)行沒問題,就能開始打包了。

怎么裝pyinstaller看參考3,大佬講得還是很詳細(xì)地。執(zhí)行pip install pyinstaller,安裝完畢后開始打包。

將上述代碼保存為sendding.py,放到python安裝目錄下的Scripts中,安裝完畢的pyinstaller.exe也在該目錄中,執(zhí)行命令pyinstaller.exe -F sendding.py開始打包,打包完成后會有成功提示:

生成的exe會在該目錄下的dist文件夾中


圖片.png

這個exe可以拿出來單獨(dú)執(zhí)行,運(yùn)行一下,能夠成功發(fā)送消息。放到windows上配一個計(jì)劃任務(wù),按時執(zhí)行就可以了。

至此,釘釘小鬧鐘制作完畢。

tips: 也可讓windows或linux定時執(zhí)行代碼,但我感覺比較麻煩,萬一換一臺設(shè)備,還要重新配置py環(huán)境,干脆打包成exe,方便,好使!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容