python企业微信调用_Python - 使用python3给企业微信发送消息

一、概述

本文将介绍如何使用python3给企业微信发送消息。我的环境是linux + python3.6.10。

二、python脚本

#!/root/.virtualenvs/wechat/bin/python

# usage: send message via wechat

import requests, sys, json

import urllib3

urllib3.disable_warnings()

###填写参数###

# Corpid是企业号的标识

Corpid = "ww34d7fed41a8d5dxx"

# Secret是管理组凭证密钥

Secret = "8QwzOi0xCvbp1ZnCbnQJ1d6uEIv-Lrbcjp93UrHFxxx"

# 应用ID

Agentid = "1000002"

# token_config文件放置路径

Token_config = r'/tmp/zabbix_wechat_config.json'

###下面的代码都不需要动###

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):

"""发送消息"""

# 获取token信息

try:

file = open(Token_config, 'r')

Token = json.load(file)['access_token']

file.close()

except:

Token = GetTokenFromServer(Corpid, Secret)

# 发送消息

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)

# 如果发送失败,将重试三次

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__':

Partyid = str(sys.argv[1])

Subject = str(sys.argv[2])

Content = str(sys.argv[3])

Status = SendMessage(Partyid, Subject, Content)

print(Status)

View Code

需要修改的地方,其中Corpid,Secret,Agentid我会在后面的截图指出来要填的值。

下行是linux环境下python3的可执行路径,如果是windows,那么这行就不需要,只要将python的路径加入到path即可

#!/root/.virtualenvs/wechat/bin/python

# Corpid是企业ID

Corpid = "ww34d7fed41a8d5dxx"

# Secret是管理组凭证密钥

Secret = "8QwzOi0xCvbp1ZnCbnQJ1d6uEIv-Lrbcjp93UrHFxxx"

# Agentid是应用ID

Agentid = "1000002"

# Token_config里面存放token信息,这个自己随便填就行,只要自己有写的权限

Token_config = r'/tmp/zabbix_wechat_config.json'

三、企业微信设置

1. 注册企业微信

2. 点击进入管理后台

创建应用

3. 创建应用完成后

Agentid,Secret就出来了

4. 查看企业id

这个就是脚本中的Corpid

5. 查看部门id

我这个python脚本是通过部门id进行群体发送,所以这个部门id到后面会有用。

四、测试脚本

五、总结

脚本是在火星小刘的基础上改的,我是在linux环境下做的实验,windows下面跟这一样,其中微小的区别我在文章中已经标明。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值