TypeError:“set”对象不可使用python中的请求模块订阅

TypeError:“set”对象不可使用python中的请求模块订阅,python,python-requests,Python,Python Requests,我不熟悉python,也不熟悉“请求”模块和stackoverflow,所以请对我放松点 如果有人能在我的代码中给我一些关于这意味着什么的建议,我将不胜感激 代码: 错误:TypeError:“set”对象不可下标 有一个很长的python错误,这里有一个片段,希望足够了 TypeError Traceback (most recent call last) /Library/Python/2.7/site-packages/ipy

我不熟悉python,也不熟悉“请求”模块和stackoverflow,所以请对我放松点 如果有人能在我的代码中给我一些关于这意味着什么的建议,我将不胜感激

代码:

错误:TypeError:“set”对象不可下标

有一个很长的python错误,这里有一个片段,希望足够了

TypeError                                 Traceback (most recent call last)
/Library/Python/2.7/site-packages/ipython-0.13.1-py2.7.egg/IPython/utils/py3compat.pyc in execfile(fname, *where)
176             else:
177                 filename = fname
--> 178             __builtin__.execfile(filename, *where)

 21 
 22 payload = {'<soapenv:Envelope><soapenv:Body><loginUser><email>tacoflavoredkisses@yum.com</email><password>password</password><setcookie>1</setcookie><remember>1</remember></loginUser></soapenv:Body></soapenv:Envelope>'}
---> 23 r = requests.post(url, data=data, headers=headers)
 24 
 25 print r.status_code

/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/api.pyc in post(url, data, **kwargs)
 85     """
 86 
---> 87     return request('post', url, data=data, **kwargs)
/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/api.pyc in request(method, url, **kwargs)
 42 
 43     session = sessions.Session()
---> 44     return session.request(method=method, url=url, **kwargs)
/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/sessions.pyc in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert)
277 
278         # Send the request.
--> 279         resp = self.send(prep, stream=stream, timeout=timeout, verify=verify, cert=cert, proxies=proxies)
/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/sessions.pyc in send(self, request, **kwargs)
372         """Send a given PreparedRequest."""
373         adapter = self.get_adapter(url=request.url)
--> 374         r = adapter.send(request, **kwargs)

将数据更改为字符串为我解决了这个问题。

requests.post的数据参数必须是字典、字节或类似文件的对象。你是一组通过的。这就是您得到TypeError的原因。查看一些示例以获取更多帮助。将数据更改为str是有效的。当一个新手的时候,简单的事情是多么的难啊。你们俩都是对的,谢谢!我需要做什么?我不确定我能选择排名这么低的最佳答案。但愿我能提前付款。很高兴它成功了。什么都不用做。如果你愿意,你可以这样做,以便其他人可以从中学习,并知道问题已经得到了回答。否则,请尽情享受Python的乐趣,并尽可能帮助他人:
TypeError                                 Traceback (most recent call last)
/Library/Python/2.7/site-packages/ipython-0.13.1-py2.7.egg/IPython/utils/py3compat.pyc in execfile(fname, *where)
176             else:
177                 filename = fname
--> 178             __builtin__.execfile(filename, *where)

 21 
 22 payload = {'<soapenv:Envelope><soapenv:Body><loginUser><email>tacoflavoredkisses@yum.com</email><password>password</password><setcookie>1</setcookie><remember>1</remember></loginUser></soapenv:Body></soapenv:Envelope>'}
---> 23 r = requests.post(url, data=data, headers=headers)
 24 
 25 print r.status_code

/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/api.pyc in post(url, data, **kwargs)
 85     """
 86 
---> 87     return request('post', url, data=data, **kwargs)
/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/api.pyc in request(method, url, **kwargs)
 42 
 43     session = sessions.Session()
---> 44     return session.request(method=method, url=url, **kwargs)
/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/sessions.pyc in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert)
277 
278         # Send the request.
--> 279         resp = self.send(prep, stream=stream, timeout=timeout, verify=verify, cert=cert, proxies=proxies)
/Library/Python/2.7/site-packages/requests-1.1.0-py2.7.egg/requests/sessions.pyc in send(self, request, **kwargs)
372         """Send a given PreparedRequest."""
373         adapter = self.get_adapter(url=request.url)
--> 374         r = adapter.send(request, **kwargs)