python實現(xiàn)給微信公眾號發(fā)送消息的方法
本文實例講述了python實現(xiàn)給微信公眾號發(fā)送消息的方法。分享給大家供大家參考,具體如下:
現(xiàn)在通過發(fā)微信公眾號信息來做消息通知和告警已經(jīng)很普遍了。最常見的就是運維通過zabbix調(diào)用shell腳本給微信發(fā)消息,起到告警的作用。當(dāng)要發(fā)送的信息較多,而且希望按照指定格式顯示的好看一點的時候,shell處理起來,個人感覺不太方便。于是我用Python重寫了發(fā)微信的功能。
#coding:utf-8 import urllib2 import json import sys def getMsg(): #為了避免發(fā)送中文消息報錯,使用utf8方式編碼 reload(sys) sys.setdefaultencoding('utf8') #這個方法生成想要發(fā)送的消息 msg = ''' 要發(fā)送的消息1 要發(fā)送的消息2 要發(fā)送的消息3 ... ''' return msg if __name__ == '__main__': #微信公眾號上應(yīng)用的CropID和Secret CropID='xxxxxxxxxxxxxxxxxx' Secret='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' #獲取access_token GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=%s&corpsecret=%s" % (CropID,Secret) result=urllib2.urlopen(urllib2.Request(GURL)).read() dict_result = json.loads(result) Gtoken=dict_result['access_token'] #生成通過post請求發(fā)送消息的url PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s" % Gtoken #企業(yè)號中的應(yīng)用id AppID=1 #部門成員id,微信接收者 UserID=1 #部門id,定義可接收消息的成員范圍 PartyID=1 #生成post請求信息 post_data = {} msg_content = {} msg_content['content'] = getMsg() post_data['touser'] = UserID post_data['toparty'] = PartyID post_data['msgtype'] = 'text' post_data['agentid'] = AppID post_data['text'] = msg_content post_data['safe'] = '0' #由于字典格式不能被識別,需要轉(zhuǎn)換成json然后在作post請求 #注:如果要發(fā)送的消息內(nèi)容有中文的話,第三個參數(shù)一定要設(shè)為False json_post_data = json.dumps(post_data,False,False) #通過urllib2.urlopen()方法發(fā)送post請求 request_post = urllib2.urlopen(PURL, json_post_data) #read()方法查看請求的返回結(jié)果 print request_post.read()
注意:
2017年6月初開始,微信企業(yè)公眾號遷移到企業(yè)微信,發(fā)送消息有一些調(diào)整,請參考前文《[企業(yè)公眾號]升級到[企業(yè)微信]之后發(fā)送消息失敗的解決方法》
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》及《Python入門與進(jìn)階經(jīng)典教程》。
希望本文所述對大家Python程序設(shè)計有所幫助。
- python實現(xiàn)的自動發(fā)送消息功能詳解
- 使用python3調(diào)用wxpy模塊監(jiān)控linux日志并定時發(fā)送消息給群組或好友
- python實現(xiàn)給微信指定好友定時發(fā)送消息
- python實現(xiàn)微信定時每天和女友發(fā)送消息
- python3+pyqt5+itchat微信定時發(fā)送消息的方法
- Python定時發(fā)送消息的腳本:每天跟你女朋友說晚安
- python模仿網(wǎng)頁版微信發(fā)送消息功能
- Python微信企業(yè)號開發(fā)之回調(diào)模式接收微信端客戶端發(fā)送消息及被動返回消息示例
- Python 網(wǎng)絡(luò)編程起步(Socket發(fā)送消息)
- Python調(diào)用飛書發(fā)送消息的示例
相關(guān)文章
python創(chuàng)建多個logging日志文件的方法實現(xiàn)
本文主要介紹了python創(chuàng)建多個logging日志文件的方法實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07解決keras.datasets 在loaddata時,無法下載的問題
這篇文章主要介紹了解決keras.datasets 在loaddata時,無法下載的問題,具有很好的參考價值,希望對大家有所幫助。2021-05-05python中hasattr()、getattr()、setattr()函數(shù)的使用
這篇文章主要介紹了python中hasattr()、getattr()、setattr()函數(shù)的使用方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-08-08Python插件virtualenv搭建虛擬環(huán)境
這篇文章主要為大家詳細(xì)介紹了Python插件virtualenv搭建虛擬環(huán)境,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11