Python请求发送具有特定部分的文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python请求发送具有特定部分的文件相关的知识,希望对你有一定的参考价值。

我正在尝试通过请求库发送文件,但接收器需要一个带有指定名称的部件(接收器术语)。我有类似的东西...到目前为止:

filePath = os.path.join( GetDownloadFolder(), fileName )
files    = {'upload': open( str( filePath ),'rb')}    
response = requests.post( url, headers=header, files=files, verify=False )

GetDownloadFolder()只获取文件所在的位置。标题包含帐户信息和内容类型。上面的代码与服务器通信,不再抱怨无法找到该文件。我从服务器收到错误,指出必须存在具有特定名称的部件。我尝试使用data = values参数:

values      = {'upload': ''}

遗憾的是,这并未解决问题。任何想法,将不胜感激。

答案

哦,我...经过一些调试后我发现了。接收器出错了。我自己将内容类型设置为Content-Type:multipart / form-data。

当我发送文件时,我收到一条错误,指出我错过了一个命名部分。我删除了内容类型的设置,并且请求填写了这样的标题。

内容类型:multipart / form-data;边界= 3645c8b2b8f74e1a8db8a85c54225964

那时......收到的数据接受了。所以边界很重要。可能是收到的内容的大小或一些这样的细节。

以上是关于Python请求发送具有特定部分的文件的主要内容,如果未能解决你的问题,请参考以下文章

如何将列表视图中的数据从一个片段发送到另一个片段

是否可以使用 GCC 编译具有特定编译器标志的代码文件的一部分?

Python 向 Postman 请求代码片段

通过邮递员发送二维字节数组(多个文件)作为多部分请求

向工作人员发送具有特定大小的数组

Python获取具有特定扩展名的目录中的最新文件