企业微信API实践

轻松学习 技术 2023-08-16

之前用了很多推送服务比如方糖或者微信公众号等,但是最近公司网络增加了诸多限制,都不能访问网络了。偶然发现公司使用了企业微信,所以在网络上开放了权限,那么公司内部的一些监控消息就可以通过企业微信去进行推送。

  1. 首先去访问企业微信官网api的信息推送api介绍.主要动作有两个部分获取token以及调用api推送消息

    • 获取token 这里主要是要准备corpid以及corpsecret,需要管理员权限才能获得secret.

      官网介绍

    • 推送消息接口 使用post方法去传送data, 认证需要access_token。需要注意的是token是有有效期的。如果在有效期内不需要重新获取。

  1. 具体的实现方法

    import requests,json
    from pprint import pprint 
    #设置企业id以及secret
    ID='XXXX'
    SECRET='XXX'
    url=f'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={ID}&corpsecret={SECRET}'
    # 获取token
    res=requests.get(url=url)
    # json.loads将字符串转为json
    ACCESS_TOKEN=json.loads(res.text)['access_token']
    #发送消息url
    newsurl=f"https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={ACCESS_TOKEN}"
    #可以推送到部门2
    #可以获取人员id个人推送 间隔用 |
    #agentid为企业添加自定义应用
    data={
       "touser" : "userid",
       "toparty" : "",
       "totag" : "",
       "msgtype" : "text",
       "agentid" : 1000002,
       "text" : {
           "content" : "推送信息测试"
       },
       "safe":0,
       "enable_id_trans": 0,
       "enable_duplicate_check": 0,
       "duplicate_check_interval": 1800
    }
    # json.dumps将字典转为json
    res2=requests.post(url=newsurl,data=json.dumps(data))
    print(res2.json()['errmsg'])
  2. 可以加强的部分

    • 将token存储起来,不用每次重复获取
    • 发送信息,可以设定参数,比如人员名单,信息类型
PREV
人生整理行动计划
NEXT
儿童教育的思考

评论(0)

发布评论