钉钉具体的接口配置文档:https://ding-doc.dingtalk.com/doc#/serverapi2/qf2nxq

企业微信的接口配置文档,目前在应用内部添加机器人时能够查看,还没有提供公网参考地址。python

一、python脚本

/Users/nisj/Documents/wptDataGit-nisj/wptData/pyScript/love/workGroupAlarm.pymysql

#!/usr/bin/python2.7.5

# -*- coding: utf-8 -*-

import datetime

import os

import time

import hmac

import hashlib

import base64

import urllib

today = datetime.date.today()

yesterday = today - datetime.timedelta(days=1)

def getDingsign():

timestamp = long(round(time.time() * 1000))

secret = 'SEC8da036adfb92d0f3d4f7ee6bb714af5e236ca12bafb231aa4e0824a7a710fd46'

secret_enc = bytes(secret).encode('utf-8')

string_to_sign = '{}\n{}'.format(timestamp, secret)

string_to_sign_enc = bytes(string_to_sign).encode('utf-8')

hmac_code = hmac.new(secret_enc, string_to_sign_enc, digestmod=hashlib.sha256).digest()

sign = urllib.quote_plus(base64.b64encode(hmac_code))

return (timestamp, sign)

def DingDing_alarm(mess):

signs = getDingsign()

timestamp = signs[0]

sign = signs[1]

alarm_mess = '''

curl 'https://oapi.dingtalk.com/robot/send?access_token=b25de77a1ee7988c6dfab9a57c0a31164dc836c350674d69aa2f2954698062fa&timestamp=%s&sign=%s' \

-H 'Content-Type: application/json' \

-d '{

"msgtype": "text",

"text": {

"content": "%s"

},

"at":{

"isAtAll": true

}

}'

''' % (timestamp, sign, mess)

os.system(alarm_mess)

def WeChat_alarm(mess):

alarm_mess = '''

curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=de569076-cf2c-4315-9333-a2b9563fd021' \

-H 'Content-Type: application/json' \

-d '{

"msgtype": "text",

"text": {

"content": "%s",

"mentioned_mobile_list":["15855134153","@all"]

},

}'

''' % (mess)

os.system(alarm_mess)

def runData():

selectResult = os.popen(

"""/usr/local/mysql/bin/mysql -hlocalhost -P3306 -uroot -p123qwe -Dwpt -e " \

select targetTab,depOds \

from move2_dependent \

where targetTab like 'dim%' \

group by targetTab,depOds;" """.format(

dt=yesterday)).readlines();

selectResultList = []

for selectCol in selectResult:

selectResultList.append(selectCol.replace('\n', ''))

return selectResultList

if __name__ == "__main__":

contentStr = '依赖关系:\n'

for content in runData():

contentList = content.split('\t')

contentStr = contentStr + contentList[0] + '&' + contentList[1] + '\n'

DingDing_alarm(mess=contentStr)

WeChat_alarm(mess=contentStr)

二、返回结果及群消息

返回结果:web

/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /Users/nisj/Documents/wptDataGit-nisj/wptData/pyScript/love/workGroupAlarm.py

mysql: [Warning] Using a password on the command line interface can be insecure.

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

100 1060 100 27 100 1033 113 4329 --:--:-- --:--:-- --:--:-- 4340

{"errcode":0,"errmsg":"ok"} % Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

100 1040 100 27 100 1013 77 2907 --:--:-- --:--:-- --:--:-- 2910

Process finished with exit code 0

企业微信群消息:sql

依赖关系:

targetTab&depOds

dim_product_category_full_1d&ods_apicategory_category_full_1d

dim_product_category_full_1d_today&ods_apicategory_category_full_1d

dim_regist_sc_1d&ods_general_shop_exclusive_qrcode_full_1d

dim_regist_sc_1d&ods_report_rpt_roi_scene_full_1d

dim_seller_base_snap_1d&ods_userinfo_userinfo_full_1d

dim_seller_cfc_organization_full_1d&ods_wpt_certchain_cfc_organization_full_1d

dim_share_documents_full_chain_1d&ods_wpt_management_share_documents_full_1d

dim_userinfo_address_full_1d&ods_userinfo_userinfo_address_full_1d

dim_userinfo_basic_info_full_1d&ods_userinfo_userinfo_center_full_1d

dim_userinfo_snap_full_1d&ods_userinfo_userinfo_center_full_1d

dim_userinfo_snap_full_1d&ods_userinfo_userinfo_full_1d

dim_user_yj_artisan_full_1d&ods_wanwan_artisan_full_1d

@倪士甲 @全部人

钉钉群消息:json

依赖关系:

targetTab&depOds

dim_product_category_full_1d&ods_apicategory_category_full_1d

dim_product_category_full_1d_today&ods_apicategory_category_full_1d

dim_regist_sc_1d&ods_general_shop_exclusive_qrcode_full_1d

dim_regist_sc_1d&ods_report_rpt_roi_scene_full_1d

dim_seller_base_snap_1d&ods_userinfo_userinfo_full_1d

dim_seller_cfc_organization_full_1d&ods_wpt_certchain_cfc_organization_full_1d

dim_share_documents_full_chain_1d&ods_wpt_management_share_documents_full_1d

dim_userinfo_address_full_1d&ods_userinfo_userinfo_address_full_1d

dim_userinfo_basic_info_full_1d&ods_userinfo_userinfo_center_full_1d

dim_userinfo_snap_full_1d&ods_userinfo_userinfo_center_full_1d

dim_userinfo_snap_full_1d&ods_userinfo_userinfo_full_1d

dim_user_yj_artisan_full_1d&ods_wanwan_artisan_full_1d

@全部人

三、说明

钉钉的安全设置能够3选1,这里采用了第2种加签的方式;企业微信目前尚未安全设置这方面的配置。

企业微信的@关注人,能够{"mentioned_list":["wangqing","@all"]},但更多的采用{"mentioned_mobile_list":["13800001111","@all"]},由于企业微信的user_id不太好找到,用电话号比较方便。

钉钉的@关注人:c#

"at": {

"atMobiles": [

"156xxxx8827",

"189xxxx8325"

],

"isAtAll": false

}

定时推送能够经过crontab或调度工具Azkaban、airflow配置。api

python企业微信群聊_企业微信、钉钉群消息python机器人自动推送相关推荐

  1. python企业微信群聊_给企业微信加个群机器人

    现在很多企业在使用企业微信或钉钉进行工作交流,我们可以在群里添加一个自定义群机器人,定时发送一些提醒或咨询信息,它可以作为一个小组手,也为工作增加一点乐趣. 群机器人 下面是企业微信和钉钉的群机器人文 ...

  2. python企业微信群聊_python3企业微信群组报警

    公司提出一个需求需要做一个企业微信的一个消息推送,需要将消息发送到聊天群里详细信息如下. 如何创建应用请阅读我的上篇文章:https://www.cnblogs.com/wangyajunblog/p ...

  3. python 企业微信机器人自动推送文字和文件

    1.首先需要在企业微信对应群里创建机器人. 2.获取后查看机器人的webhook. 3.发送文件需要先上传文件,所以通过编辑机器人查看api文档,获取上传url: 4.代码 #传入文件 def pos ...

  4. 修改网页代码_利用网页监控优势,做百度自动推送

    网页监控是什么?WEB视界网页监控是指利用自动化服务来扫描监控网站页面,当发现网站页面有变化时,就立即作出响应的服务.网页监控优势有很多,那么如何利用网页监控优势来做百度自动推送呢? 网页监控做百度推 ...

  5. 微信群聊助手好用吗?微信群聊助手可以发多少个人?

    微信群太多难管理?重点是,垃圾群,无用群太多了?该怎么解决?也许,微信群聊助手这个帮数万群主解决运营难的工具,可以帮助你. 微信群聊助手帮您节省80%的微信群管理成本,省时.省心.省力,还能创造群价值 ...

  6. python实现企业微信机器人的自动推送

    关于企业微信机器人的自动推送 前些天,做了一个关于企业微信机器人自动推送消息的一个小功能,在这里来聊一下其中学习到的一些内容. 由于是需要进行自动推送新闻,因此先对需要获得信息的网页进行爬取. 在爬取 ...

  7. python程序30行_30行Python代码,打造一个简单的微信群聊助手,简单方便

    大家都知道,最近代码君迷上了Python,一直在研究这门语言,还是那句话,人生苦短,我学Python,今天代码君要教大家一个黑科技,30行代码实现自己定制的微信群聊助手,这个助手有什么用呐,就是用来活 ...

  8. 如何用C语言写出一个微信群聊机器人

    要用 C 语言写出一个微信群聊机器人,您需要先了解微信群聊的相关信息和 C 语言的编程知识. 首先,微信群聊是通过微信服务器进行通信的,因此您需要了解如何通过网络协议与微信服务器进行通信.微信群聊使用 ...

  9. 飞书群聊机器人每日自动推送语录及风景照片python版

    飞书群聊机器人自动推送消息 使用场景 推送机制 代码目录 代码详解 获取图片 获取有效token 上传图片并得到Image_Key 使用 完整代码 使用场景 最近使用飞书聊天,觉得蛮好用的,刚好这段时 ...

最新文章

  1. java build path entries 为空_同事的代码简直没法看,我来教你如何更优雅的设计Java异常...
  2. Nginx访问VM虚拟机CentOS 7系统与本地Windows系统共享目录403
  3. 人工智能中的局部搜索算法
  4. Java 8过滤器,地图,收集和流示例
  5. 【渝粤教育】广东开放大学 javaweb 动态网站开发技术 形成性考核 (53)
  6. influxdb mysql对比_InfluxDB读写性能测试
  7. 一个CXF集成SPRING的WEBSERVICE完整实例
  8. android camera工程师,Android从Camera中获取图片的两种方法
  9. android settings 源码,菜鸟学Android源码-Settings(2)
  10. JS_高程3.基本概念(2)
  11. RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility.
  12. bzoj2763:最短路
  13. Xamarin.Form 超链接 用手势实现
  14. 15.1 异常(异常的基本概念+自定义异常)
  15. python的sorted用法
  16. WordPress漏洞扫描器wpscan
  17. linux重启tomcat进程,Linux系统重启tomcat服务的方法详解
  18. 图纸上标注的是实际尺寸吗_机械图纸尺寸标注规则,这次终于懂了
  19. [推荐系统]互联网推荐系统比较研究
  20. chia/xch rpc形式充提生成地址

热门文章

  1. 蓝牙耳机何时成为手游最佳搭档?双11五款低延迟真无线蓝牙耳机推荐
  2. java线程池参数_java线程池参数设置原则,如何设置线程池参数比较合理?
  3. 专为汽车凸轮传感应用的速度传感器ATS675及CH502介绍
  4. MacBooster Pro 8.0.4中文版 — Mac清理优化工具
  5. 基于STM32单片机的密码锁(Proteus仿真、程序)
  6. crontab 每天凌晨8点_关于定时执行任务:Crontab的20个例子
  7. Python爬取全民小视频网站视频,可爬取全网视频!
  8. Linux 学习指导
  9. 搜狗CEO王小川杀出重围的三个产品
  10. android 文件系统类型的介绍