您好,登錄后才能下訂單哦!
如何使用Python實(shí)現(xiàn)給企業(yè)微信發(fā)送消息功能,針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。
下面將介紹如何使用python3給企業(yè)微信發(fā)送消息。我的環(huán)境是linux + python3.6.10。
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2020/8/20 上午12:42 # @Author : wangying # @Site : # @File : 企業(yè)微信.py # @Software: PyCharm #!/root/.virtualenvs/wechat/bin/python # usage: send message via wechat import requests, sys, json import urllib3 urllib3.disable_warnings() ###填寫參數(shù)### # Corpid是企業(yè)號(hào)的標(biāo)識(shí) Corpid = "ww32a580fceb30f350" # Secret是管理組憑證密鑰 Secret = "QyBTbg1QL9lmNwaErqv1DMV0Y_G3lZre268E0hpTDqk" # 應(yīng)用ID Agentid = "1000004" # token_config文件放置路徑 Token_config = r'/tmp/zabbix_wechat_config.json' ###下面的代碼都不需要?jiǎng)?## def GetTokenFromServer(Corpid, Secret): """獲取access_token""" Url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken" Data = { "corpid": Corpid, "corpsecret": Secret } r = requests.get(url=Url, params=Data, verify=False) print(r.json()) if r.json()['errcode'] != 0: return False else: Token = r.json()['access_token'] file = open(Token_config, 'w') file.write(r.text) file.close() return Token def SendMessage(Partyid, Subject, Content): """發(fā)送消息""" # 獲取token信息 try: file = open(Token_config, 'r') Token = json.load(file)['access_token'] file.close() except: Token = GetTokenFromServer(Corpid, Secret) # 發(fā)送消息 Url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s" % Token Data = { "toparty": Partyid, "msgtype": "text", "agentid": Agentid, "text": {"content": Subject + '\n' + Content}, "safe": "0" } r = requests.post(url=Url, data=json.dumps(Data), verify=False) # 如果發(fā)送失敗,將重試三次 n = 1 while r.json()['errcode'] != 0 and n < 4: n = n + 1 Token = GetTokenFromServer(Corpid, Secret) if Token: Url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s" % Token r = requests.post(url=Url, data=json.dumps(Data), verify=False) print(r.json()) return r.json() if __name__ == '__main__': # 部門id Partyid = '20' # 消息標(biāo)題 Subject = '自應(yīng)用程序代碼測(cè)試' # 消息內(nèi)容 Content = 'str(sys.argv[3])' Status = SendMessage(Partyid, Subject, Content) print(Status)
需要修改的地方,其中Corpid,Secret,Agentid我會(huì)在后面的截圖指出來要填的值。
下行是linux環(huán)境下python3的可執(zhí)行路徑,如果是windows,那么這行就不需要,只要將python的路徑加入到path即可
#!/root/.virtualenvs/wechat/bin/python
# Corpid是企業(yè)ID
Corpid = "ww34d7fed41a8d5dxx"
# Secret是管理組憑證密鑰
Secret = "8QwzOi0xCvbp1ZnCbnQJ1d6uEIv-Lrbcjp93UrHFxxx"
# Agentid是應(yīng)用ID
Agentid = "1000002"
# Token_config里面存放token信息,這個(gè)自己隨便填就行,只要自己有寫的權(quán)限
Token_config = r'/tmp/zabbix_wechat_config.json'
https://qy.weixin.qq.com/
創(chuàng)建應(yīng)用
Agentid,Secret就出來了
這個(gè)就是腳本中的Corpid
我這個(gè)python腳本是通過部門id進(jìn)行群體發(fā)送,所以這個(gè)部門id到后面會(huì)有用。
直接運(yùn)行:python manage.py runserver
關(guān)于如何使用Python實(shí)現(xiàn)給企業(yè)微信發(fā)送消息功能問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。