我参照了很多网上内容,有以下三种解决方法,前两种类似,是用unicode:
我们之前在Python2.x的时候,用requests上传文件是正常存储中文名字,但是使用Python3之后,文件名就变得不正常了。因为Java服务端接口不支持这种方式,于是只能修改Python脚本。
因为Python3使用requests的时候,会调用urllib3库—>fields.py的新处理逻辑
当文件名是中文的时候, value = email.utils.encode_rfc2231(value, 'utf-8') 就会转换格式为:
filename* 这种格式的键值对。
当然改源码文件是最快的,但是这样不利于移植。
还是修改下requests请求吧。
python读取中文名的文件一直比较麻烦目前得到的可靠解决方案:
strPath = "类.py" #这里的strpath是你的中文路径名
a = unicode(strPath , "utf-8")
print list(fileinput.input(a))