企业微信推送[python]

qiye-wechat-push

企业微信推送 python版

  • 不需要安装企业微信客户端
  • 可在微信中直接收到文本消息,内容显全文

1. 企业微信注册

  • 1.1 注册企业

用电脑打开企业微信官网,https://work.weixin.qq.com/, 注册一个企业

  • 1.2 获取企业ID

我的企业 –> 最下边可以看到企业ID: corpid

  • 1.3 获取应用ID

管理企业 –> 应用管理 –> 创建应用

创建完成后可得到应用ID agentid

  • 1.4 获取Secret

还在应用页面, 获取 Secret, 需要在企业微信客户端里接收。

这样就得到了 secret

2. 发送文本消息 python

  • 2.1 官方API:

用到了两个API

  • 2.2 python 代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import json
import requests

# https://work.weixin.qq.com/wework_admin/frame#profile
corp_id = 'wwxxxxxxxxxxxxxxxxx'
corp_secret = 'Ghxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
agent_id = '10xxxxxx'

def get_access_token(corp_id, corp_secret):
resp = requests.get(f'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={corp_id}&corpsecret={corp_secret}')
js = json.loads(resp.text)
print(js)
if js["errcode"] == 0:
access_token = js["access_token"]
expires_in = js["expires_in"]
return access_token, expires_in

def wechat_push_text(agent_id, access_token, message):
data = {
"touser": "@all",
"msgtype": 'text',
"agentid": agent_id,
"text": {
"content": message
},
"safe": 0,
"enable_id_trans": 0,
"enable_duplicate_check": 0,
"duplicate_check_interval": 1800
}
resp = requests.post(f'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={access_token}', json=data)
js = json.loads(resp.text)
print(js)
if js["errcode"] == 0:
return js

access_token, expires_in = get_access_token(corp_id, corp_secret)
wechat_push_text(agent_id=agent_id, access_token=access_token, message='wechat notify\ntest')


代码:

https://github.com/shenbo/qiye-wechat-push