把Mac截屏发送到飞书

import time, os, json
import requests

def takeScreenCapture():
    now = time.time()
    # print(int(now))

    # 执行指令的路径
    # print(os.getcwd())
    # 文件路径
    # print(__file__)
    # 工程路径
    projectDir = os.path.abspath(os.path.split(os.path.abspath(os.path.realpath(__file__)))[0])
    screenCaptureDir = projectDir + os.sep + "screencapture"
    # print(screenCaptureDir)
    if not os.path.exists(screenCaptureDir):
        os.mkdir(screenCaptureDir)

    # 截图
    screenCapturePath = screenCaptureDir + os.sep + str(int(now)) + ".jpg"
    os.system("screencapture " + screenCapturePath)
    return screenCapturePath

def getTenantAccessToken():
    url = "https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal"
    data = '{"app_id": "xxx","app_secret": "xxx"}'
    res = requests.post(url=url, data=data)
    # print(res.text)
    tenant_access_token = json.loads(res.text)["tenant_access_token"]
    # print(tenant_access_token)
    return tenant_access_token

def uploadImgs(imgPath):
    token = getTenantAccessToken()

    # 上传照片
    with open(imgPath, 'rb') as f:
        image = f.read()
    url = "https://open.feishu.cn/open-apis/im/v1/images"
    headers={'Authorization': "Bearer " + token}
    files={"image": image}
    data={"image_type": "message"}
    res = requests.post(url=url, headers=headers, files=files, data=data, stream=True)
    # print(res.text)
    image_key = json.loads(res.text)["data"]["image_key"]
    # print(image_key)
    os.remove(imgPath)

    # 获得群ID
    url = "https://open.feishu.cn/open-apis/im/v1/chats"
    headers={'Authorization': "Bearer " + token}
    res = requests.get(url=url, headers=headers)
    # print(res.text)
    chat_id = json.loads(res.text)["data"]['items'][0]['chat_id']
    # print(chat_id)

    # 发送消息
    url = "https://open.feishu.cn/open-apis/im/v1/messages?receive_id_type=chat_id"
    headers={'Authorization': "Bearer " + token, 'Content-Type': "application/json; charset=utf-8"}
    data = {
        "receive_id": chat_id, 
        "content": "{\"image_key\": \"" + image_key + "\"}", 
        "msg_type": "image"
        }
    res = requests.post(url=url, headers=headers, json=data)
    # print(res.text)


sc = takeScreenCapture()
# print("Save Screen Capture to %s" % sc)
uploadImgs(sc)

猜你喜欢

转载自blog.csdn.net/h3c4lenovo/article/details/121708822