关于python钉钉机器人自动发图片到群无法放大查看 求优秀da神解决

本文介绍了如何使用Python与阿里云OSS进行文件操作,包括上传图片、生成签名URL,然后将图片发送到指定的DingTalk群组的方法。
摘要由CSDN通过智能技术生成

如题 编写了代码url形式的 但是发到群里居然是表情包类 无法放大查看细节 各位大神有解决办法么 或者更加优化方案

import requests

import time

import hmac

import hashlib

import base64

import oss2

# 阿里云OSS相关配置

access_key_id = 'ZZ'

access_key_secret = 'ZZ'

endpoint = 'oss-rg-china-mainland.aliyuncs.com'

bucket_name = 'tan'

 

# 初始化OSS客户端

auth = oss2.Auth(access_key_id, access_key_secret)

bucket = oss2.Bucket(auth, endpoint, bucket_name)

image_formats = ('.png', '.jpg', '.jpeg', '.gif', '.bmp')

for obj in oss2.ObjectIterator(bucket):

    bucket.batch_delete_objects([obj.key])

 

print("All files deleted from the bucket.")

 

print("Bucket中的所有文件已删除。")

# 上传图片到阿里云盘

local_file_path = r'C:\Users\admin\Desktop\temp\temp.png'

remote_file_name = 'example.jpg'

bucket.put_object_from_file(remote_file_name, local_file_path)

 

# 获取上传图片的URL

url = bucket.sign_url('GET', remote_file_name, 60) # URL有效期为3600秒

print("Uploaded image URL:", url)

 

def send_image_to_dingtalk_group(image_url, webhook_url, secret):

    timestamp = str(round(time.time() * 1000))

    secret_enc = secret.encode('utf-8')

    string_to_sign = '{}\n{}'.format(timestamp, secret)

    sign = hmac.new(secret_enc, string_to_sign.encode('utf-8'), hashlib.sha256).digest()

    sign = base64.b64encode(sign)

    

    headers = {

        'Content-Type': 'application/json',

    }

    

    payload = {

        "msgtype": "image",

        "image": {

            "picURL": image_url

        }

    }

 

    params = {

        'timestamp': timestamp,

        'sign': sign.decode('utf-8')

    }

 

    response = requests.post(webhook_url, headers=headers, params=params, json=payload)

    

    if response.status_code == 200:

        print("Image sent to DingTalk group successfully!")

    else:

        print("Failed to send image to DingTalk group. Status code: ", response.status_code)

 

# Replace with your actual webhook URL, image URL and secret

webhook_url = "https://oapi.dingtalk.com/robot/send?access_token=XX"

image_url =bucket.sign_url('GET', remote_file_name, 60)

secret = "SEC"

 

send_image_to_dingtalk_group(image_url, webhook_url, secret)

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值