Skip to main content
 首页 » 编程设计

Python之值错误 : need more than 1 value to unpack

2025年05月04日15cloudgamer

请检查这个问题Python oauth2 - making request我正在我的 Web 应用程序中使用 vimeo 集成。

最初我得到了一个oauth_signature,我没有遇到任何问题(没有错误),我从一开始就再次尝试了这些东西,现在我得到了ValueError: need more than 1 value在发出此请求时解压

>>> r = request.get(url, headers=headers) 

你可以在这里查看我的代码 https://gist.github.com/2949182

错误是

Traceback (most recent call last): 
File "<console>", line 1, in <module> 
File "/usr/local/lib/python2.7/dist-packages/requests-0.10.1-py2.7.egg/requests/api.py", line 51, in get 
return request('get', url, **kwargs) 
File "/usr/local/lib/python2.7/dist-packages/requests-0.10.1-py2.7.egg/requests/api.py", line 39, in request 
return s.request(method=method, url=url, **kwargs) 
File "/usr/local/lib/python2.7/dist-packages/requests-0.10.1-py2.7.egg/requests/sessions.py", line 159, in request 
headers[k] = header_expand(v) 
File "/usr/local/lib/python2.7/dist-packages/requests-0.10.1-py2.7.egg/requests/utils.py", line 152, in header_expand 
for i, (value, params) in enumerate(headers): 
ValueError: need more than 1 value to unpack 

谢谢!

更新

>>> headers 
{'Authorization': u'oauth_body_hash=XXXXXXXXXXXXXXXXXXXXXXXXXX,oauth_nonce=3454768,oauth_timestamp=1340035585,oauth_consumer_key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX,oauth_signature_method=HMAC-SHA1,oauth_version=1.0,oauth_signature=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX,oauth_callback=http://127.0.0.1:8000/information/vimeo'} 

请您参考如下方法:

要解压字典,您必须使用 .items(),因此代码如下:

for i, (value, params) in enumerate(headers.items()): 

既然那不是你的代码而且你不能改变它,错误告诉你的是标题不应该是一个字典而是一个元组(或列表),如果你像这样传递标题:

headers = [("Authorization", "Values")] 

它应该可以工作。

编辑:这不起作用。现在字典版本 {"Authorization": "Values"} 对我有用,也许更新请求会有所帮助。