Python實現(xiàn)釘釘消息推送

釘釘是一個功能非常完善的辦公軟件,對于數(shù)據(jù)來說能不能也可以很好的利用釘釘這個資源呢?答案是肯定的。釘釘機器人是釘釘群的一個高級擴展功能,而且有很多種類型,如下:

對于我們?nèi)粘?shù)據(jù)消息推送的話則選擇自定義機器人

這里可以修改頭像、名稱,最近由于釘釘機器人升級,新增了安全設置,需要自定義關鍵詞、加簽、IP地址(三選一),我一般都是選擇自定義關鍵詞,根據(jù)每個群推送的內(nèi)容不一樣設置對應的關鍵詞,大部分都是日報之類的關鍵詞。

完成安全設置后,復制出機器人的Webhook地址,可用于向這個群發(fā)送消息,格式如下:

這個鏈接要注意安全,不要泄露

至此,我們建好釘釘機器人,接下來就是如何利用Python來實現(xiàn)釘釘群的定時數(shù)據(jù)自動推送

Python有釘釘?shù)牡谌桨?,只需要導入就可以?/p>

from dingtalkchatbot.chatbot import DingtalkChatbot

然后寫一個調用的函數(shù)

剩下的就是處理數(shù)據(jù),把結果傳到message中,然后運行就可以

由于我日常工作中很多數(shù)據(jù)是直接從mysql中查詢得到,這里以mysql查詢?yōu)槔齺碚f一下。

首先連接和查詢數(shù)據(jù)庫還是依賴pymysql包,這些基礎的可以參照上篇文章。主要麻煩的是得到的數(shù)據(jù)結果處理,Python操作mysql得到的數(shù)據(jù)結果是一個元組

????result : ((a,b),(c,d),(e,f),)

如果我們需要獲取數(shù)據(jù)則根據(jù)索引取出對應的數(shù)據(jù)即可,

比如GMV:result([0][0]),得到結果a,其他數(shù)據(jù)以此類推

但是這里需要注意的是我們僅僅獲取到了數(shù)據(jù)結果,但是這個數(shù)據(jù)是什么內(nèi)容還沒有得到,就是SQL結果的列名,這里需要我們手動拼一下。舉一個日常的例子,銷售相關的數(shù)據(jù)

【銷售數(shù)據(jù)】

mes_gmv = 'GMV:'?+?result([0][0])

mes_order?= '訂單量:'?+?result([0][1])

這里我們拼了一個數(shù)據(jù)內(nèi)容名稱“銷售數(shù)據(jù)”,然后拼了一個字段名稱:GMV、訂單量,這樣我們推的數(shù)據(jù)表達什么意思就很清楚。這里是一行一條數(shù)據(jù)的展示,實際工作中還會有數(shù)據(jù)的展示效果跟Excel一致,感興趣的可以試試,大致效果如下:

日期?|?GMV |?訂單量 |?下單人數(shù) |?銷售件數(shù)

10.01 | 1000 |?10000 |?100000 |?20000

10.02?| 1000?|?10000?|?100000 |?20000

以上的拼接都要注意換行,要不然數(shù)據(jù)就全部擠在一行了


到這兒我們已經(jīng)處理完數(shù)據(jù),剩下的就是把數(shù)據(jù)結果傳到message中,然后設置定時任務就可以定時推送數(shù)據(jù)了,是不是很簡單,后面就可以很方便的查詢數(shù)據(jù)了。同時釘釘?shù)臋C器人還可以推送很多其他類型的消息,感興趣的可以去查詢官方文檔



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

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

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