python开发企业应⽤,使⽤Python发送企业消息使⽤Python发送企业消息
发布时间:2020-07-03 04:10:28
来源:51CTO
阅读:1015
作者:猫猫maomao
准备⼯作:
到企业官⽹,注册⼀个企业;登录企业后台,创建⼀个“⾃建”应⽤, 获取企业ID、agentid、secret这3个必要的参数;在企业的通讯录中,创建多个测试账号;在⼿机端安装“企业”APP,使⽤测试账号登录到企业,准备接收消息。
程序代码:
企业提供API开发接⼝,通过HTTPS的GET、POST⽅法与企业后台进⾏交互,完成获取令牌、发送数据、获取数据的操作。
Python代码主要使⽤requests库,将企业API进⾏简单封装,模拟https的GET、POST操作,向指定的⽤户发送企业消息。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
import requests
import json
class WeChat:
def __init__(self):
self.CORPID = 'ww2e1234567895498f5498f'  #企业ID,在管理后台获取
self.CORPSECRET = 'xy11234567898hk_ecJ123456789DhKy4_1y12345OI'#⾃建应⽤的Secret,每个⾃建应⽤⾥都有单独的secret
self.AGENTID = '1000002'  #应⽤ID,在后台应⽤中获取
self.TOUSER = "maomao|dingding"  # 接收者⽤户名,多个⽤户⽤|分割
def _get_access_token(self):
url = 'qyapi.weixin.qq/cgi-bin/gettoken'
values = {'corpid': self.CORPID,
'corpsecret': self.CORPSECRET,
}
req = requests.post(url, params=values)
data = json.)
return data["access_token"]
def get_access_token(self):
try:
with open('./tmp/f', 'r') as f:
t, access_token = f.read().split()
except:
with open('./tmp/f', 'w') as f:
access_token = self._get_access_token()
cur_time = time.time()
f.write('\t'.join([str(cur_time), access_token]))代码转换
return access_token
else:
cur_time = time.time()
if 0
return access_token
else:
with open('./tmp/f', 'w') as f:
access_token = self._get_access_token()
f.write('\t'.join([str(cur_time), access_token]))
return access_token
def send_data(self, message):
send_url = 'qyapi.weixin.qq/cgi-bin/message/send?access_token=' + _access_token()
send_values = {
"touser": self.TOUSER,
"msgtype": "text",
"agentid": self.AGENTID,
"text": {
"content": message
},
"safe": "0"
}
send_msges=(bytes(json.dumps(send_values), 'utf-8'))
respone = requests.post(send_url, send_msges)
respone = respone.json()  #当返回的数据是json串的时候直接⽤.json即可将respone转换成字典
return respone["errmsg"]
if __name__ == '__main__':
wx = WeChat()
wx.send_data("这是程序发送的第1条消息!\n Python程序调⽤企业API,从⾃建应⽤“告警测试应⽤”发送给管理员的消息!")
wx.send_data("这是程序发送的第2条消息!")运⾏截图:
参考链接:
python实现通过企业发送消息python脚本--⽤企业实现发送信息企业后台管理:
企业API⽂档:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。