我对python相当陌生,我一直在尝试使用Tkinter和requests来创建一个可以登录到我的web应用程序的简单程序。我得到了以下错误:
Exception in Tkinter callback
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk/Tkinter.py", line 1410, in __call__
return self.func(*args)
File "test.py", line 35, in login
c.post('http://fruro.com/login.php', data=self.payload)
File "/Users/Peter/Desktop/fruroPy/fruro/lib/python2.7/site-packages/requests/sessions.py", line 399, in post
return self.request('POST', url, data=data, **kwargs)
File "/Users/Peter/Desktop/fruroPy/fruro/lib/python2.7/site-packages/requests/sessions.py", line 343, in request
prep = req.prepare()
File "/Users/Peter/Desktop/fruroPy/fruro/lib/python2.7/site-packages/requests/models.py", line 222, in prepare
p.prepare_body(self.data, self.files)
File "/Users/Peter/Desktop/fruroPy/fruro/lib/python2.7/site-packages/requests/models.py", line 375, in prepare_body
body = self._encode_params(data)
File "/Users/Peter/Desktop/fruroPy/fruro/lib/python2.7/site-packages/requests/models.py", line 81, in _encode_params
return urlencode(result, doseq=True)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 1311, in urlencode
len(v)
AttributeError: Entry instance has no attribute '__len__'
几个小时来,我一直在想到底是什么出了问题,但我不知道我做错了什么。在
以下是我正在使用的代码:
^{pr2}$任何帮助都将不胜感激。提前谢谢你。在
问题出在这条线上
这是因为作为}(反正不是您想要的)。要修复它,请将
^{pr2}$data
传入的dict
参数的值是对Entry
小部件的引用,而不是这些小部件的内容。因此,当Requests
试图获得len
时,您会得到一个错误,因为Entry
没有实现{self.payload
更改为类似于相关问题 更多 >
编程相关推荐