所需工具:Pycharm/requests包/申请好的机器人Webhook地址
企业微信群聊中的机器人发送消息,本质上就是将官方给好的消息格式post到专属的url中去,然后机器人就会按照你给的消息类型发送文本消息、图片消息、链接消息等。基本格式在机器人配置界面中,企业微信已经很详细的说明了,例如:
这是官方给的文本消息post的data格式,行2表示该内容的格式是"text",行4冒号右边则是具体的文本内容,行5是通过群昵称@某人或者all,行6是通过与用户提交的手机号来@,它们各自的必须性在表格中是否必填里也标明了。
以上是要发的内容,那么如何将内容post到你的机器人专属webhook地址呢,其实很简单,在此需要安装一下requests包。打开cmd输入指令:
pip install requests
再去Pycharm的File-Settings里导入安装好的库,具体流程可以csdn上搜索"pycharm requests 安装"。利用requests模块就可以将你的数据post到专属webhook里,以刚刚的"text"消息为例:
import requests
data = {
"msgtype": "text",
"text": {
"content": "大家好,我是小秘书,欢迎大家加入大家庭哦!",
"mentioned_list":["xiaoming"],
"mentioned_mobile_list":["13456789100"]
}
}
r = requests.post(url='https://qyapi.weixin.qq.com/xxxxxx', json=data) #url中的xxx是你的机器人webhook对应片段,不要轻易泄露出去否则任何人都可以控制你的机器人哦
print(r.text)
直接运行即可。而我本人操控时一般文本或者图文链接形式用的多,所以放在一块用input和if来挑选了:
""" Coding: UTF-8
Project: Code
AUTHOR: lEPUS SHEN
DATE: 2021 年 09 月 20 日
"""
import requests
post_type=input('POST消息类型?text/news\n')
if post_type=='text':
data = {
"msgtype": "text",
"text": {
"content": "大家好,我是小秘书,欢迎大家加入大家庭哦!",
"mentioned_list":[],
}
}
r = requests.post(url='https://qyapi.weixin.qq.com/xxxx', json=data)
print(r.text)
elif post_type=='news':
data = {
"msgtype": "news", #news格式消息
"news": {
"articles":[
{
"title" : "中秋节新闻", #主标题
"description" : "今年中秋节公司有豪礼相送", #副标题
"url" : "http://www.wanplus.com/csgo/team/3243", #这段是图文消息点进去后转到的地址
"picurl" : "http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png" #这段是你图文消息封面的图片picurl,最简单的获取方法是在百度图片上找到你想要的,右键“新标签下打开”,然后此时地址栏的地址就是该图片的picurl
}
]
}
}
r = requests.post(url='https://qyapi.weixin.qq.com/xxxx', json=data)
print(r.text)
这样子可以统一放到一篇代码里,运行后选择要post的类型即可,以后要用到的多了直接在后面加elif,当然如果够严谨仔细可以多加些防报错、输错后重新输入的机制,在这里偏懒就到此为止了。
总结一下关键就是post到webhook的方法,内容的话仔细阅读一下配置其实很简单就能照着模板更改,希望对你有所帮助。