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

 解决方法

1.查找request包下的fields.py位置

from distutils.sysconfig import get_python_lib
print(get_python_lib())

2.定位到45-46行,找到这两句,注释掉

    value = email.utils.encode_rfc2231(value, 'utf-8')
    value = '%s*=%s' % (name, value)

3.在后面新加一句,完成!

value = '%s="%s"' % (name, value)

推送信息展示: 

企业微信中文名称临时素材 报错 44001:empty media data_第1张图片

 

检查修改fields.py代码的结果,出现的问题定位:

修改之前,post的内容:


请求参数:
--f78bbb3088884a139---------------
Content-Disposition: form-data; name="file"; filename*=utf-8''%E6%B5%8B%E8%AF%95.docx
--f78bbb3088884a139---------------

修改之后,post的内容

请求参数:

--13135c8c88888888888888888888888

Content-Disposition: form-data; name="file"; filename="测试.docx"

--13135c8c88888888888888888888888

可以看到中文名被识别出来了。

参考链接:参考原版解答

留个坑:可以支持doc文件,但docx类型文件发送失败。

你可能感兴趣的:(python,python)