Python 调用企业微信群机器人发送消息及文件

Python 操作企业微信群机器人。

企业微信群创建机器人 :


安装 requests json :

shell 复制代码
pip install requests
pip install json

发送消息(markdown)

python 复制代码
import requests
import json

# 企业微信机器人发送文字
def send_markdown (message, wx_url):
    # wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxx'
    data = {"msgtype": "markdown", "markdown": {"content": message}}

    r = requests.post(url=wx_url,
                      data=json.dumps(data))  # url中的xxx是你的机器人webhook对应片段,不要轻易泄露出去否则任何人都可以控制你的机器人
    print(r.text)
    print(r.status_code)


send_message(wx_url='xxx',message='xxxx')

发送文件及消息

python 复制代码
import requests
import json

#发送文件
def post_file(file, wx_url, id_url):
    # wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxx'
    data = {'file': open(file, 'rb')}
    # 请求id_url(将文件上传微信临时平台),返回media_id
    #  id_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=xxxxxx&type=file'
    response = requests.post(url=id_url, files=data) 
    print(response.text)
    json_res = response.json()
    media_id = json_res['media_id']
    data = {"msgtype": "file",
            "file": {"media_id": media_id}
            }
    # 发送文件
    result = requests.post(url=wx_url, json=data)
    return (result)


# 发送文字
def send_message(message, person_list, wx_url):
    # wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxx&type'
    data = {
        "msgtype": "text",
        "text": {
            "content": message,
            "mentioned_list": person_list  # 需@人的姓名

        }
    }
    r = requests.post(url=wx_url,
                      json=data)  # url中的xxx是你的机器人webhook对应片段,不要轻易泄露出去否则任何人都可以控制你的机器人



#发送文件 发送 send?   上传文件 upload_media?  type=file
wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxx'
id_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=xxxxxxx&type=file'
post_file('/zscript/serverpi/zserverpireport/xxx.html',wx_url=wx_url,id_url=id_url)


#发送文字
wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx&type'
send_message(message='今日巡检报告已生成,请注意查收',person_list='@all',wx_url=wx_url)

企业微信机器人

当前自定义机器人支持文本(text)、markdown(markdown)、图片(image)、图文(news)四种消息类型。

机器人的text/markdown类型消息支持在content中使用<@userid>扩展语法来@群成员

更多内容可参照企业微信官方帮助文档 https://open.work.weixin.qq.com/help2/pc/14931

也可单机群机器人webhook地址查看详细配置说明

相关推荐
LiAo_1996_Y15 小时前
CSS如何实现文字渐变效果_通过background-clip实现艺术字
jvm·数据库·python
2401_8877245015 小时前
CSS如何让表单在手机端友好展示_利用Flexbox实现堆叠排版
jvm·数据库·python
zhangchaoxies15 小时前
Layui轮播图(carousel)怎么设置自动播放间隔
jvm·数据库·python
FreakStudio15 小时前
无硬件学LVGL:基于Web模拟器+MiroPython速通GUI开发—布局与空间管理篇
python·单片机·嵌入式·面向对象·并行计算·电子diy
qq_3729069316 小时前
如何在 Vuetify 中可靠捕获 Chip 关闭事件(包括键盘触发)
jvm·数据库·python
Ulyanov16 小时前
用Pyglet打造AI数字猎人:从零开始的Python游戏开发与强化学习实践
开发语言·人工智能·python
zopple16 小时前
ThinkPHP5常见问题及解决方案
python·php·laravel
234710212717 小时前
4.15 学习笔记
开发语言·软件测试·python
qq_3721542317 小时前
SQL嵌套查询中常见报错排查_语法与权限处理
jvm·数据库·python
2401_8877245018 小时前
CSS如何设置文字溢出显示省略号_利用text-overflowellipsis
jvm·数据库·python