{"errcode":44001,"errmsg":"empty media data, hint: [1655962096234893527769663], from ip: 222.72.xxx.246, more info at https://open.work.weixin.qq.com/devtool/query?e=44001"}

  • 平台
  • 出错原因
  • 尝试方案
  • 出错代码
  • 成功代码
  • 区别

平台

Windows企业微信(企业微信群机器人)
语言:Python

出错原因

上传url和发送的url使用了相同的api

尝试方案

1、更新urllib3和requests的版本,并不管用
2、查看网上的在boundary后加\r\n,感觉太过复杂,而且官方文档并未使用该方案,感兴趣的可以看看,然而我这里成功的时候作出判断,这个方案行不通(在我遇到的这个情况下),附上地址(https://blog.csdn.net/xuexiaodong009/article/details/83081911)

另外网上的方案基本只有上述两类,如果下面的方法尝试后无效,可自行查看上面提到过的两种方案。

出错代码

def sent_to_work_wechat(file_path=None):"""上传文件至企业微信通告群Parma file_path: 上传文件路径"""if not file_path:# file_path = './2022-07-18-tonggao_log.txt'file_path = f'{get_time_of_timestamp()}-tonggao_log.txt'# 通告平台 通告数量 群机器人robot_curl = "https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=9df679e-1352-4663-bc22-69e82662c9c1"upload_url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=9df679e-1352-4663-bc22-69e82662c9c1&type=file"data = {'file': open(file_path, 'rb')}resp = requests.post(upload_url, files=data)json_res = resp.json()logger.info(f"企业微信机器人上传文件成功,file:{file_path}")post_data = {"msgtype": "file","file": {"media_id": json_res.get('media_id')}}headers = {'Content-Type': 'application/json'}resp = requests.post(url=robot_curl, headers=headers, json=post_data)logger.info(f"response: {resp.text}")

成功代码

def sent_to_work_wechat(file_path=None):"""上传文件至企业微信通告群Parma file_path: 上传文件路径"""if not file_path:# file_path = './2022-07-18-tonggao_log.txt'file_path = f'{get_time_of_timestamp()}-tonggao_log.txt'# 通告平台 通告数量 群机器人robot_curl = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=9df679e-1352-4663-bc22-69e82662c9c1"upload_url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=9df679e-1352-4663-bc22-69e82662c9c1&type=file"data = {'file': open(file_path, 'rb')}resp = requests.post(upload_url, files=data)json_res = resp.json()logger.info(f"企业微信机器人上传文件成功,file:{file_path}")post_data = {"msgtype": "file","file": {"media_id": json_res.get('media_id')}}headers = {'Content-Type': 'application/json'}resp = requests.post(url=robot_curl, headers=headers, json=post_data)logger.info(f"response: {resp.text}")

区别

当时出问题的代码就在上传文件和发送文件的url上,因为当时把参数搞乱了(袍子傻笑:嗝嗝嗝咯咯)

所以如果出现了这个问题,请先查看常用参数是否正常,例如url

{“errcode“:44001,“errmsg“:“empty media data, hint: [1655962096234893527769663], from ip: 222.72.xxx.相关推荐

  1. 微信小程序系列--之模板消息错误提示: errcode: 41028, errmsg: invalid form id hint:如何解决...

    本人从事互联网项目java开发五年,会java,,python,nodejs,前端,爬虫等技术,对发*项目,营销活动,微信业务(公共号,支付,小程序,第三开放平台)很精通.本人也正在努力去实现一套微信 ...

  2. 企业微信中文名称临时素材 报错 44001:empty media data

    解决方法 1.查找request包下的fields.py位置 from distutils.sysconfig import get_python_lib print(get_python_lib() ...

  3. 统一客服消息返回错误:{errcode:43004,errmsg:require subscribe hint: [9Vv08633952]}

    2019独角兽企业重金招聘Python工程师标准>>> 公众号或者小程序发送客服消息错误: {"errcode":43004,"errmsg" ...

  4. errmsg:invalid message type hint 群发图文消息

    我先说下我的场景 测试号群发图文消息 答案是不能 但是微信返回的错误信息是 {"errcode":40008,"errmsg":"invalid me ...

  5. 微信公众号开发,报错{errcode:41005,errmsg:media data missing hint:}的解决办法---亲测有效

    在微信开发中,遇到报错:errcode":41005,"errmsg":"media data missing hint 具体解决办法如下地址,实测有效: 对应 ...

  6. 微信公众号 模版消息 跳转到小程序报错{ errcode: 40013, errmsg: 'invalid appid hint: [cC6RwA09011295]' }

    今天做微信公众号模版消息推送,要求点击模版消息,就直接跳转到小程序里面. 当然,我已经按照官方文档,填写了正确的小程序appid,可是还是报错. { errcode: 40013, errmsg: ' ...

  7. 微信公众号开发 重要 access_token {errcode:40164,errmsg:invalid ip 114.221.159.11, not in whitelist hint:

    微信公众号开发的钥匙是access_token. 我们开发者的ip就是门牌号码. 如果没有在微信开发配置中设置好白名单,即门牌号码. 那获取access_token过程中,肯定会报错,比如: acce ...

  8. errcode: 41001, errmsg: access_token missing hint: [w.ILza05728877!]

    2019独角兽企业重金招聘Python工程师标准>>> Postman获取微信小程序码的时候报错, errcode: 41001,  errmsg: access_token mis ...

  9. {‘errcode‘: 47001, ‘errmsg‘: ‘data format error rid} 微信测试号模板消息,参数不对。

    {'errcode': 47001, 'errmsg': 'data format error rid: 60376cfb-331c9101-0093becf'} 有一个要点:自定义消息模板的变量必须 ...

最新文章

  1. 微软职位内部推荐-Principal Dev Manager
  2. JavaWeb:上传下载文件
  3. html原样输出html代码
  4. -code vs 1474 十进制转m进制
  5. cxf javax.xml.parsers.DocumentBuilderFactory.setFeature(Ljava/lang/String;Z)
  6. spring 配置文件被加载两次
  7. Mybatis 有坑,千万别踩!
  8. Apache Kafka简介与安装(一)
  9. XP系统服务启动设置优化
  10. P1903 [国家集训队] 数颜色 / 维护队列
  11. 机器学习笔记 - 探索性数据分析(EDA) 概念理解
  12. 全开源即时通讯(IM)系统 高仿微信
  13. 人民币大小写金额转换
  14. 关于机器学习特征选择的方法总结
  15. C++技术的主要应用领域
  16. 【Linux编程】零拷贝之splice( )函数和tee( )函数
  17. LabVIEW学习笔记十三:窗格详解(调整窗格大小时缩放特定对象)
  18. wincc服务器硬件,wincc客户机服务器方案中,操作系统有没有特别要求啊,-工业支持中心-西门子中国...
  19. 流量见顶碰上产业疲软 汽车互联网平台走向何处?
  20. 前端学习笔记(16)-Axios封装

热门文章

  1. 【随便搞搞】自己写了一个用于炒股软件的自动选股分析代码 0603更新 天齐锂业两个板出局
  2. HTML5+CSS3之快速入门 day6-day10布局,表单,css精灵,css hack,BFC规范
  3. Python:实现first come first served先到先得算法(附完整源码)
  4. Apple store安装旧版本的软件
  5. CSS学习笔记——动画进阶(八音盒动画效果)
  6. 塔塔露也能学会的算法(1) | dijkstra从入门到放弃
  7. 私链多节点的创建部署
  8. k8s多节点master部署
  9. Windows图标-Icon文件格式分析
  10. 《大象:thinking in uml 》(第二版) 11章 系统分析 3-4节 用例实现、软件架构和框架