python请求在数组中发送文件时显示ValueError:值太多,无法解压缩

python请求在数组中发送文件时显示ValueError:值太多,无法解压缩,python,python-requests,Python,Python Requests,这里有什么问题 我有一个错误 ValueError:要解压缩的值太多 此代码过程是获取文件夹中的所有可用图像,然后将该图像位置放入数组中。然后创建另一个名为files的数组,添加具有特定格式的图像位置,并将POST请求发送到API 导入请求 导入日志记录 导入操作系统 导入json 尝试: 将http.client作为http\u客户端导入 除恐怖外: #Python 2 将httplib作为http_客户端导入 http_client.HTTPConnection.debuglevel=1 l

这里有什么问题

我有一个错误

ValueError:要解压缩的值太多

此代码过程是获取文件夹中的所有可用图像,然后将该图像位置放入数组中。然后创建另一个名为files的数组,添加具有特定格式的图像位置,并将POST请求发送到API

导入请求
导入日志记录
导入操作系统
导入json
尝试:
将http.client作为http\u客户端导入
除恐怖外:
#Python 2
将httplib作为http_客户端导入
http_client.HTTPConnection.debuglevel=1
logging.basicConfig()文件
logging.getLogger().setLevel(logging.DEBUG)
requests\u log=logging.getLogger(“requests.packages.urllib3”)
请求\u log.setLevel(logging.DEBUG)
请求\u log.propagate=True
url_和=”https://api.test.com/api/3.0/listings/"
android_令牌='68as76df87s86df7asd76f87as6df78sfd'
标题={
“授权”:“令牌”+android_令牌,
“平台”:“android”
}
数据_={
“邮寄详细信息”:“3”,
‘abcoupay’:‘false’,
‘价格’:‘55.00’,
“描述”:“测试描述”,
“标题”:测试钻机和其他设备,
“meetup”:“false”,
“条件”:“2”,
'邮寄':'真实',
'集合id':'24'
}
URL=[]
对于os.listdir(os.getcwd()+“/product\u images”)中的文件:
如果文件.endswith((“.jpg”、“.jpeg”、“.png”、“.jpg”、“.jpeg”、“.png”):
x=os.getcwd()+“\\”+文件
url.append(x)
文件=[]
x=0
对于URL中的文件:
文件。追加('photo_u“+str(x)+”:('image_u“+str(x)+”.jpg',open(“+file+”,'rb'),'image/jpeg'))
x+=1
#文件={
#'photo_0':('image_0.jpg',打开('E:/products files/Drill machine/1.jpg','rb'),'image/jpeg'),
#'photo_1':('image_1.jpg',打开('E:/products files/Drill machine/2.jpg','rb'),'image/jpeg')
#         }
response=requests.request(“POST”,url\u和,data=data\u,files=files,headers=headers)
打印(响应.文本.编码(“utf-8”))
错误

回溯(最近一次呼叫最后一次):
文件“cookies.py”,第102行,在
response=requests.request(“POST”,url\u和,data=data\u,files=files,headers=headers)
文件“C:\python27\lib\site packages\requests\api.py”,第60行,在请求中
return session.request(method=method,url=url,**kwargs)
文件“C:\python27\lib\site packages\requests\sessions.py”,第519行,在请求中
准备=自我准备请求(req)
文件“C:\python27\lib\site packages\requests\sessions.py”,第462行,在prepare\u请求中
钩子=合并钩子(request.hooks,self.hooks),
文件“C:\python27\lib\site packages\requests\models.py”,第316行,在prepare中
self.prepare_body(数据、文件、json)
文件“C:\python27\lib\site packages\requests\models.py”,第504行,在prepare\u body中
(正文,内容类型)=自编码文件(文件,数据)
文件“C:\python27\lib\site packages\requests\models.py”,第141行,在_encode_文件中
对于文件中的(k,v):
ValueError:要解压缩的值太多

用于
请求的
文件
参数。请求
应该是一个dict,其中键是文件名,值是文件内容或文件对象。因此,您应该将
文件
变量构建为dict:

files = {'image_%s.jpg' % x: open(file, 'rb') for x, file in enumerate(urls)}
如果还需要内容类型,可以将dict值设为包含文件名、文件对象和内容类型的3元组:

files = {'image_%s.jpg' % x: ('image_%s.jpg' % x, open(file, 'rb'), 'image/jpeg') for x, file in enumerate(urls)}

请求的
文件
参数。请求
应该是一个dict,其中键是文件名,值是文件内容或文件对象。因此,您应该将
文件
变量构建为dict:

files = {'image_%s.jpg' % x: open(file, 'rb') for x, file in enumerate(urls)}
如果还需要内容类型,可以将dict值设为包含文件名、文件对象和内容类型的3元组:

files = {'image_%s.jpg' % x: ('image_%s.jpg' % x, open(file, 'rb'), 'image/jpeg') for x, file in enumerate(urls)}
您的文件应该以dict或元组列表的形式传递,而您并没有这样做。你可以在下面做

files.append(("photo_"+str(x), ("image_"+str(x)+".jpg", open(file, "rb"), "image/jpeg")))
您的文件应该以dict或元组列表的形式传递,而您并没有这样做。你可以在下面做

files.append(("photo_"+str(x), ("image_"+str(x)+".jpg", open(file, "rb"), "image/jpeg")))

url\u和,data=data\u android
你确定那个逗号吗?。我需要找到一个更好的例子,但从错误中可以清楚地看出,它需要一个dict
url\u,data=data\u android
你确定这个逗号吗?。我需要找到一个更好的例子,但从错误中可以清楚地看出,它希望DICI现在面临这个错误,可能是因为双斜杠“``回溯(最近一次调用):文件“cookies.py”,第91行,在files={'image_%s.jpg''%x:open(File,'rb')for x,在enumerate(url)}文件“cookies.py”,第91行,在files={'image_u%s.jpg'%x:open(文件'rb')for x,文件位于枚举(URL)}IOError:[Errno 2]没有这样的文件或目录:'E:\\PENTEST-POCS\\python\\1.jpg'``那么文件
E:\PENTEST-POCS\python\1.jpg
是否实际存在?是的,可能是双黑斜杠的问题。问题已解决。扩展名有问题。我已修复,非常感谢。您好,我需要文件中的内容类型:image/jpeg。您如何将其添加到您的代码现在正面临这个错误,可能是因为双斜杠“``回溯(最近一次调用):文件“cookies.py”,第91行,在files={'image_%s.jpg'%x:open(File,'rb')代表x,在enumerate(URL)中的文件}文件“cookies.py”,在files={'image_%s.jpg'%x:open(File,'rb')代表x,在enumerate(URL)中的文件}IOError:[错误号2]没有这样的文件或目录:'E:\\PENTEST-POCS\\python\\1.jpg'``那么文件
E:\PENTEST-POCS\python\1.jpg
是否实际存在?是的,可能是双黑斜杠的问题。问题已解决。扩展名有问题。我已修复,非常感谢。您好,我需要文件中的内容类型:image/jpeg。您如何将其添加到你的代码谢谢