当前位置:  开发笔记 > 编程语言 > 正文

从Python脚本使用POST发送文件

如何解决《从Python脚本使用POST发送文件》经验,为你挑选了1个好方法。

这是使用Python脚本中的POST发送文件的几乎重复,但我想添加一个警告:我需要一些能够正确处理字段和附加文件编码的内容.当你将包含非ascii字符的unicode字符串放入混合中时,我已经能够找到解决方案.此外,大多数解决方案不会对数据进行64位编码,以保持7位清洁.



1> Dan Lenski..:

我能想到的最好的事情就是自己编码.这个子程序怎么样?

from urllib2 import Request, urlopen
from binascii import b2a_base64

def b64open(url, postdata):
  req = Request(url, b2a_base64(postdata), headers={'Content-Transfer-Encoding': 'base64'})
  return urlopen(req)

conn = b64open("http://www.whatever.com/script.cgi", u"Liberté Égalité Fraternité")
# returns a file-like object

(好吧,所以这段代码只是发送POST数据.但是你显然想要多部分编码的数据,好像你点击了一个"上传文件"按钮,对吧?嗯,这是我在这里和来自的答案非常直接的组合你联系的问题.)

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有