提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
钉钉SDK上传媒体文件问题
前言
公司业务需求,需要给我员工推送短视频,需要使用钉钉的sdk,结果sdk本身存在问题,导致浪费一天时间,特此记录一下,避免有人重蹈覆辙
一、直接说结果
钉钉python的sdk本身写的有问题,直接将文件以二进制读取,然后以multipart/form-data格式上传,导致下发的文件根本打不开。结论直接使用api不使用sdk,如果你有耐心可以去修改他的sdk
代码如下(示例):
def upload(access_token, path):
files = {
'media': open(path, 'rb')
}
data = {
'type': 'video',
}
url = f'https://oapi.dingtalk.com/media/upload?access_token={access_token}'
response = requests.post(url=url, files=files, data=data).json()