python 中文姓名库,Python Requests库上传文件中文文件名处理方法是什么

使用Python Requests库,提交POST请求上传文件,不支持中文文件名?

使用Python Requests库,向微信服务器上传媒体问题。

当使用英文文件名称,上传时,一切OK。

当下面代码中file_name字段包含中文,怎无法上传成功。

返回media data missing

也咨询过微信端,他们说数据未发送成功,就是空数据。

首先我想问这样写有问题么?为什么中文失败,英文成功?

如果Requests有问题,该如何更改?

如果不是Requests的问题,哪些地方可能有问题如何排查?

data = {'file': (file_name, open(url,'rb'), content_type)}

#data = {'file': open(url, 'rb')}

requests.post(url,params=params,files=data)

Inside site-packages/requests/packages/urllib3/fields.py, delete this (line ~50):

value = email.utils.encode_rfc2231(value, 'utf-8')

And change the line right underneath it to this:

value = '%s="%s"' % (name, value.decode('utf-8'))

This makes servers (that I've tested) pick up the field and process it correctly.

你对file_name字段URLEncoder一下,我记得Http协议不支持中文文件名

我也遇到这个问题,请问题主现在解决了么~?

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd18867.html

相关文章 Recommend

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值