当前位置: 首页 > 知识库问答 >
问题:

字节对象没有属性编码

岑俊明
2023-03-14

我试图建立一个用户登录系统,我已经成功地建立了用户注册页面,但是当我试图登录时,我得到了下面的错误。我使用烧瓶,python3.6和pymongo。这是一个错误:属性错误:'bytes'对象没有属性'encode'请帮助。

Traceback(最近一次调用最后一次):文件"C:\用户\elvis\AppData\本地\程序\Python\Python36\lib\site-包\flask\app.py",第2309行,在调用返回self.wsgi_app(环境,start_response)文件"C:\用户\elvis\AppData\本地\程序\Python\Python36\lib\site-包\flask\app.py",第2295行,wsgi_app响应=self.handle_exception(e)文件"C:\用户\elvis\AppData\本地\程序\Python\Python36\lib\site-包\flask\app.py",第1741行,handle_exceptionrerave(exc_type,exc_value,tb)文件"C:\用户\elvis\AppData\本地\程序\Python\Python36\lib\site-包\flask_compat.py",第35行,在重新提高值文件"C:\用户\elvis\AppData\本地\程序\Python\Python36\lib\site-包\flask\app.py",行2292,在wsgi_app响应=self.full_dispatch_request()文件"C:\用户\elvis\AppData\本地\程序\Python\Python36\lib\site-包\flask\app.py",第1815行,full_dispatch_requestrv=self.handle_user_exception(e)文件"C:\用户\Elvis\AppData\local\程序\Python\Python36\lib\site-包\flask\app.py",第1718行,handle_user_exceptionrerave(exc_type,exc_value,tb)文件"C:\用户\elvis\AppData\local\程序\Python\Python36\lib\site-包\flask_compat.py",第35行,reraash值文件"C:\用户\猫王\AppData\本地\程序\Python\Python36\lib\site-包\flask\app.py",第1813行,full_dispatch_requestrv=self.dispatch_request()File"C:\用户\猫王\AppData\本地\程序\Python\Python36\lib\site-包\flask\app.py",第1799行,dispatch_request返回self.view_functionsrule.endpoint文件"C:\用户\猫王\桌面\烧瓶应用\测试蒙\甚至\应用\run.py",第30行,在登录bcrypt.hashpw(request.form['pass']. encode('utf-8'),login_user['密码']) == login_user['密码']. encode('utf-8'):属性错误:'bytes'对象没有属性'编码'

(错误页面截图)

共有2个答案

霍建章
2023-03-14

追踪的最后一行

login_user['password']) == login_user['password'].encode('utf-8'): AttributeError: 'bytes' object has no attribute 'encode'

告诉您正在传递的对象类型为bytes,而不是str
所以您正在尝试调用。encode()方法,用于字节对象
您需要检查什么是login\u user['password']值,或者通过调用bytes对象login\u user['password']上的decode()方法将其转换为字符串。解码()。编码('utf-8')或在此字典开头存储字符串值。

从这个回溯中我可以看出,你所做的没有多大意义,但是除非你能分享代码,否则我就说不出更多了。

编辑:

login if bcrypt.hashpw(request.form['pass'].encode('utf-8'), login_user['password']) == login_user['password'].encode('utf-8'): AttributeError: 'bytes' object has no attribute 'encode'

您也可以删除。endoce('utf-8')来自登录用户['password']部分,它也可以工作。

慎俊艾
2023-03-14

只给Password="

例子:

pdf = pdfplumber.open(f,password='')
 类似资料:
  • 这是我的密码: 这条线给了我错误 "属性错误:'浮点'对象没有属性'exp'"。X,t是Numpy ndarray。

  • 问题内容: 我正在开发Django应用程序,并且出现以下错误 我的模型是这样构造的 我应该做什么? 问题答案: 首先,您必须非常小心地重写以具有非可选参数。记住,每次从一个查询集中获取一个对象时,它将被调用! 这是您想要的正确代码: 如果您只使用该对象的子类,我强烈建议在Animal上设置abstract选项。这样可以确保不为动物创建表,而仅为绵羊(等)创建表。如果未设置abstract,则将创建

  • 我创建了这个简单的GUI: 我让用户界面启动并运行。当我点击按钮时,我在控制台上得到以下错误: 为什么设置为?

  • 我试图将一些数字表示为具有连通分支的图的边。为此,我一直在使用python的networkX模块。 我的图是G,节点和边初始化如下: 一旦我添加以下行, 我得到了上面提到的错误。如果可能有用的话,所有节点都以9-15位数字进行编号。共有412个节点和422条边。 详细错误: 编辑:解决如下问题。有用信息:pos创建一个dict,其中包含每个节点的坐标。正在执行nx。draw(G,pos)创建pyl

  • 问题内容: 我将Selenium webdriver(chrome)与Python结合使用,试图从网页上的所有链接中获取 href 。当我尝试以下操作时: 它设法获取所有链接,但是在get_attribute上出现错误: “ WebElement”对象没有属性“ Get_Attribute” 尽管到处都看起来很正常。 问题答案: “ Get_Attribute”属性不存在,但是“ get_attr

  • 问题内容: 我创建了这个简单的GUI: 我启动并运行了UI。当我单击Grab按钮时,在控制台上出现以下错误: 为什么entryBox设置为None? 问题答案: 并且place在功能Entry对象和所有其他部件的回报None。在python中,执行此操作时.,表达式的结果为返回的值,因此。 你应该将其分成两行,如下所示: 这样,你就可以将参考存储在其中,并且可以按照你的期望进行布局。如果你以块的形