吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7261|回复: 13
收起左侧

[Python 转载] python调用钉钉机器人(发送群消息)

[复制链接]
虎尼玛 发表于 2019-6-25 14:52
本帖最后由 虎尼玛 于 2020-3-4 11:12 编辑

最近捣鼓着把一些报警信息发送到移动端,考虑通过itchat或wxpy向微信群发送消息(群里也有相关帖子),无奈微信封了新号的web登陆功能,断了念想.
  又试着捣鼓企业微信,实现了相关功能.但是公司已经有了企业微信号(我没管理权限),让其他同事重新加自己建的新号很是麻烦,再次否决.
  恰逢部门推钉钉,瞄准群机器人,看了下开发文档,很容易就实现了发送报警消息,特分享下
先建群机器人 再帖段代码(requests库需要自己安装下)
#!/usr/bin/python
#_*_coding:utf-8_*_
import requests,json
def sendinfo_ding(data):
    url = 'xx'  #你的机器人webhook地址
    program = {
        "msgtype": "text",
        "text": {"content": data},
    }
    headers = {'Content-Type': 'application/json'}
    f = requests.post(url, data=json.dumps(program), headers=headers)
sendinfo_ding('服务都挂了,速度来嗨!')


自定义机器人

自定义机器人

记下webhook

记下webhook

免费评分

参与人数 2吾爱币 +1 热心值 +1 收起 理由
jokebox + 1 我很赞同!
微微笑95 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 虎尼玛 发表于 2019-6-25 16:51
坐久落花多 发表于 2019-6-25 16:37
企业微信的求分享啊

#!/usr/bin/python
# -*- coding: utf-8 -*-
import time
import requests
import json,os
class WeChat_SMS:
    def __init__(self):
        self.CORPID = 'xx'#企业ID,登陆企业微信,在我的企业-->企业信息里查看
        self.CORPSECRET = 'xx'#自建应用,每个自建应用里都有单独的secret
        self.AGENTID = 'xx' #应用代码
        self.TOUSER = "@all" #@all 全体成员
        self.TOPARY = "1"    #部门ID
    def _get_access_token(self):
        url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken'
        values = {'corpid': self.CORPID,'corpsecret': self.CORPSECRET,}
        req = requests.post(url, params=values)
        data = json.loads(req.text)
        #print (data)
        return data["access_token"]
    def get_access_token(self):
        try:
            with open('access_token.conf', 'r') as f:
                t, access_token = f.read().split()
        except:
            with open('access_token.conf', '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 < cur_time - float(t) < 7200:
                return access_token
            else:
                with open('access_token.conf', '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, msg):
        send_url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + self.get_access_token()
        send_values = {
            "touser": self.TOUSER,
            "msgtype": "text",
            "agentid": self.AGENTID,
            "text": {
            "content": msg
            },
            "safe": "0"
        }
        send_msges=(bytes(json.dumps(send_values), 'utf-8'))
        respone = requests.post(send_url, send_msges)
        respone = respone.json()
        return respone["errmsg"]
if __name__ == '__main__':
    wx = WeChat_SMS()
    wx.send_data(msg="服务都挂了,速度来嗨!")
ZVesper 发表于 2020-12-11 15:33
请教:怎么实现自定义钉钉机器人@自动回复,或者@后调用另一API接口再返回post到钉钉API
Bruce_HD 发表于 2019-6-25 15:02
glk1010282338 发表于 2019-6-25 15:22
厉害厉害
jokebox 发表于 2019-6-25 16:04
不错不错  可以直接拿去用
 楼主| 虎尼玛 发表于 2019-6-25 16:30
jokebox 发表于 2019-6-25 16:04
不错不错  可以直接拿去用

免费评分走一波
坐久落花多 发表于 2019-6-25 16:37

企业微信的求分享啊

guo6lq 发表于 2019-6-25 16:38
谢谢,这个好用
朱大海 发表于 2019-6-25 16:39
不错不错!很好
坐久落花多 发表于 2019-6-25 17:32
虎尼玛 发表于 2019-6-25 16:51
#!/usr/bin/python
# -*- coding: utf-8 -*-
import time


收到,谢谢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 21:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表