美文网首页Python
python发企业微信机器人

python发企业微信机器人

作者: 九章9405 | 来源:发表于2020-11-17 23:28 被阅读0次
import requests
import base64
import hashlib
import os
#参数bot是指机器人的key,具体可参考企业微信机器人官网
#发送普通消息,text是文本内容
def send_text(text,bot):
    url = f"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key={bot}"
    headers = {"Content-Type": "text/plain"}
    data = {
          "msgtype": "text",
          "text": {
             "content": text,
          }
       }
    r = requests.post(url, headers=headers, json=data)
    print(r.text)
#发送markdown消息,text是文本内容,可接受markdown语法
def send_markdown(text,bot):
    url = f"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key={bot}"
    data = {
    "msgtype": "markdown",
    "markdown": {
        "content": text
    }}
    r = requests.post(url,json=data)
    print(r.text)
#发送文件,file_path是指文件路径(我目前就试了excel文件)
def send_file(file_path,bot):
    file_url = f"https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key={bot}&type=file"
    file= {'file':open(file_path,'rb')}
    result = requests.post(file_url, files=file)
    file_id = eval(result.text)['media_id']
    url = f"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key={bot}"
    data = {
        "msgtype": "file",
        "file": {"media_id": file_id,}
    }
    r = requests.post(url, json=data)
    print(r.text)
#发送图片,file_path是指图片路径
def send_img(file_path,bot):
    with open(file_path,"rb") as f:
        base64_data = base64.b64encode(f.read())
    file = open(file_path, "rb")
    md = hashlib.md5()
    md.update(file.read())
    res1 = md.hexdigest()
    url = f"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key={bot}"
    headers = {"Content-Type": "text/plain"}
    data = {
            "msgtype": "image",
            "image": {
                "base64": base64_data.decode('utf-8'),
                "md5": res1
            }
        }
    r = requests.post(url, headers=headers, json=data)
    print(r.text)

相关文章

网友评论

    本文标题:python发企业微信机器人

    本文链接:https://www.haomeiwen.com/subject/tiqqiktx.html