运用python实现企业微信群机器人消息推送

这篇具有很好参考价值的文章主要介绍了运用python实现企业微信群机器人消息推送。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用场景:将BI报表精准推送入(群),精准触达用户
目的:提高管理层对数据的感知度
工具:python+企业微信
步骤:
1、创建企业微信群机器人,提取Webhook地址(群机器人地址)
2、编写代码填充推送内容信息实现推送
3、其他需求自定义代码编写

1. 将BI报表推送到群

import requests
from datetime import datetime

def fun():
    URL = '机器人地址'
    mHeader = {'Content-Type': 'application/json; charset=UTF-8'}
    mBody = {
    "msgtype": "news",
    "news": {
       "articles" : [
           {
               "title" : "#标题",
               "description" : "#说明",
               "url" : "#推送链接",
               "picurl" : "图片链接"
           }
        ]
    }
}
    # 注意:json=mBody  必须用json    
    requests.post(url=URL, json=mBody, headers=mHeader)
 
 
if __name__ == '__main__':
    fun()


a="推送消息文案,比如【这是今日的运营报表最新数据,请查收】"
url = '机器人的webhook地址' #机器人的webhook地址
headers = {'Content-type':'application/json'}
data = {
    "msgtype": "text",
    "text": {
        "content": a, #要发送的文字
        "mentioned_list": ["@all"], #要@的人,可以是特定的人的工号或手机号
        }
    }


r = requests.post(url,headers=headers,json=data)
print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"),"文本发送情况提示",r.text)


2. 群消息推送

实现方法1–优化后

from __future__ import print_function
import time
import schedule
import requests

from datetime import datetime
now = datetime.now() # current date and time

**#微信机器人地址**
url = '企业微信机器人地址'

**# 当前时间**
load_time = now.strftime('%Y-%m-%d %H:%M:%S')

**#不同时间段的文案内容**
#zaoqi1 = '起床上班了哈哈哈'
morning1 = '大家早上号,又是努力的一天,大家加油鸭!'
#wucan1 = '伙伴们,午餐时间到,一定要记得准时吃饭哦!'
afternoon1 = '人生道路上的每一个里程碑,都刻着“起点”两个字。大家下午好'
evening1 = '全公司最努力的小伙伴们,下班了,记得好好放松一下哦'
daily1 = '伙伴们,要发日报了哦!未发的,明日下午茶你安排!'
goodnight1 = '夜深人静,睡意绵绵~晚安!'

#自定义的函数名称、函数参数
def greetings(greet):
    data = {
        'msgtype': 'text',#推送消息类型
        'text': {'content': f'{greet} ',#调用函数参数
        "mentioned_list": ["@all"],#@的人员,也可以是单独的工号、手机号
        }
    }
    requests.post(url, json=data)



# 调用函数和文案每天的指定时间执行
schedule.every().day.at('08:30').do(greetings, morning1 )
#schedule.every().day.at('10:15').do(greetings, morning1 )
schedule.every().day.at('14:00').do(greetings, afternoon1)
schedule.every().day.at('18:00').do(greetings, evening1)
schedule.every().day.at('20:00').do(greetings, daily1)
schedule.every().day.at('22:00').do(greetings, goodnight1)


while True:
    # 运行所有可以运行的任务进行推送
    schedule.run_pending()
    print(load_time)
    time.sleep(1)

实现方法2-优化前

from __future__ import print_function
import time
import schedule
import requests

from datetime import datetime
now = datetime.now() # current date and time


url = '机器人地址'
# 当前时间为
load_time = now.strftime('%Y-%m-%d %H:%M:%S')

#文案内容
#zaoqi1 = '起床上班了哈哈哈'
morning1 = '优秀的小伙伴们,大家早上好,充满活力的一天开始啦,大家加油鸭!'
#wucan1 = '伙伴们,午餐时间到,一定要记得准时吃饭哦!大家今天吃啥呢?'
afternoon1 = '人生道路上的每一个里程碑,都刻着“起点”两个字。全公司最棒的小伙伴们,下午好!'
evening1 = '全公司最努力的小伙伴们,该用膳了!今日晚膳我请客,自己掏钱,嘿嘿嘿!'
daily1 = '伙伴们,要发日报了喂!未发的,明日下午茶你安排!'
goodnight1 = '夜深人静,睡意绵绵~明天又是活力满满的一天!!晚安!'


def morning():
    data = {
        'msgtype': 'text',
        'text': {'content': f'{morning1} \n记得打上班卡哈',
        "mentioned_list": ["@all"],
        }
    }
    requests.post(url, json=data)

def afternoon():
    data = {
        'msgtype': 'text', 
        'text': {'content': f'{afternoon1} ',
         "mentioned_list": ["@all"],
         }
    }
    requests.post(url, json=data)


def evening():
    data = {
        'msgtype': 'text',
        'text': {'content': f'{evening1} \n记得打下班卡哈',
        "mentioned_list": ["@all"]
        }
    }
    requests.post(url, json=data)
    
def daily(): 
    data = {
        'msgtype': 'text',
        'text': {'content': f'{daily1}',
        "mentioned_list": ["@all"]
        }
    }
    requests.post(url, json=data)
    
def goodnight():
    data = {
        'msgtype': 'text', 'text': {'content': f'{goodnight1}'},
        "mentioned_list": ["@all"]
        }
    requests.post(url, json=data)


# 每天的指定时间执行
schedule.every().day.at('08:30').do(morning)
schedule.every().day.at('14:00').do(afternoon)
schedule.every().day.at('18:00').do(evening)
schedule.every().day.at('20:00').do(daily)
schedule.every().day.at('22:00').do(goodnight)

'''

# 10分钟执行一次
schedule.every(10).minutes.do(morning)
schedule.every(15).minutes.do(afternoon)
schedule.every(20).minutes.do(evening)
schedule.every(25).minutes.do(daily)
schedule.every(30).minutes.do(goodnight)
'''

'''
# 每隔5天到10天执行一次
schedule.every(5).to(10).days.at('00:00').do(morning)
schedule.every(5).to(10).days.at('00:00').do(evening)
# 每周一的这个时候执行一次任务
schedule.every().monday.do(morning)
# 每周三00:03执行一次任务
schedule.every().wednesday.at('00:03').do(morning)
'''

while True:
    # 运行所有可以运行的任务
    schedule.run_pending()
    print(load_time)
    time.sleep(1)

参考链接
python+群机器人自动化推送
python+群机器人自动化推送
python+群机器人自动化推送
企业微信官方文档分享文章来源地址https://www.toymoban.com/news/detail-565027.html

到了这里,关于运用python实现企业微信群机器人消息推送的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C#使用企业微信群机器人推送生产数据

        在日常的工作生产中,经常会有将将生产数据或者一些信息主动推送给相关的管理人员,我们公司在开发WMS系统时,为了仓库的储存安全,需要在危废品库存达到一定的储量时,自动通知仓管员去处理危废品,所以就需要程序自动的通过企业微信告知仓管员,这个时候就

    2024年02月10日
    浏览(40)
  • 企业微信群:机器人定时提醒功能数据库配置化

    目录 企微群机器人使用 APScheduler概要使用说明 cron方式设置 场景设置案例  表结构 代码 场景:对于周期性重复需要做的事情,每次都需要人工去提醒,容易忘记,而企业微信群可以添加群机器人,群机器人提供接口能力,按照接口格式说明把消息内容发到群里以及@相关人,

    2024年02月15日
    浏览(28)
  • Zabbix 6.4 版本企业微信群机器人报警配置

    从Zabbix 5.4升级后配置企业微信报警发下原来的脚本代码报错,搜索一圈发下使因为新版本对里面的部分代码不支持,几经周折终于找到这段可用的代码。 告警-媒介-创建媒介类型 直接添加webhook类型脚本 Token是企业微信内建好的机器人webhook地址后面的参数 其他照填,很简单

    2024年02月15日
    浏览(31)
  • 工作随记-Java利用企业微信群机器人定时发送消息

    hi,大家好,我是恰恰 阅读本文需要2分钟~ 最近利用企业微信群机器人做的需求主要有 1.返奖率通知与告警: 抽奖箱能抽出垃圾也能抽出大货,每隔5分钟查询一下这个返奖率,如果用户频繁抽出大货,这个抽奖箱的返奖率已经高出了阈值,那么我们就将其下架。 2.自动发送导

    2024年02月09日
    浏览(37)
  • 【Java】企业微信群机器人发送消息(文字、图片、MarkDown、文件消息)

    2022/4/22更新:新增可发送文件消息。 发送文件消息需要先将文件上传到企业微信的临时素材,url为https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?type=filekey=**********,这个key就是群机器人Webhook地址的key参数,在代码里我已经处理好了,只要有Webhook地址就行。获取到media_id,再拿

    2023年04月08日
    浏览(37)
  • Jenkins 获取 Git 的提交记录(变更记录)通过机器人发送到企业微信群中

    如上,第一个就是文本,实测可以使用# 标题栏, 引用 其他的可以自己研究下. 下面这个是插件企业微信插件.  ##下面说明下. 缘起:通过企业微信插件已经能够实现较简单且有去的构建发布信息了. 但是过于简单的输出信息且插件不能直接自定义 ##需求:         在现有插件输出的

    2024年02月16日
    浏览(33)
  • 搭建一个 MidJourney-微信群机器人

    知数云 MJ 微信群机器人,调用 Midjourney Imagine API 进行画图。 市面上价值XXXX的 MidJourney 微信群机器人,且用且珍惜。 需求 :mytimerun。 wechaty_puppet_service_token = “环境变量” zhishuyun_chatgpt_35_token = “GPT API 接口的 token” zhishuyun_midjourney_token = “MJ API 接口的 token” 执行代码前先设

    2024年02月16日
    浏览(34)
  • 智能二狗机器人使用攻略,微信群活跃助手

    群里聊天的人来来去去就那几个?聊来聊去都是一样的话题? 要怎么才能丰富社群的玩法体验,提高成语的积极性,打造99+社群呢? 别慌,让二狗机器人来拯救你的无聊! 数十款互动玩法,轻松玩转社群!牢牢粘住用户,让他们爱上群聊~ 1、互动小游戏 想找点乐子放松一下

    2024年02月08日
    浏览(66)
  • 封装Python脚本:使用企业微信机器人发送消息至企业微信

    官方文档地址:https://developer.work.weixin.qq.com/document/path/91770#%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E7%BE%A4%E6%9C%BA%E5%99%A8%E4%BA%BA 可以通过如下步骤设置企业微信机器人: 首先建立或者进入某个群聊 进入群聊设置页面, 点击“群机器人添加”可添加一个机器人成功 添加成功后,复制并保

    2024年02月09日
    浏览(26)
  • PowerShell 实现企业微信机器人推送消息

    在ARMS告警管理中创建企业微信机器人后,您可以在通知策略中指定对应的企业微信群用于接收告警。当通知策略的匹配规则被触发时,系统会自动向您指定的企业微信群发送告警通知。企业微信群收到通知后,您可以在企业微信群中对告警进行管理。 通过接口实现在群里发

    2024年02月06日
    浏览(92)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包