'str'对象没有属性'decode'。这是Python 3的错误吗?

12 浏览
0 Comments

'str'对象没有属性'decode'。这是Python 3的错误吗?

这个问题已经有答案了

\'str\' object has no attribute \'decode\' in Python3

这是我的代码:

import imaplib
from email.parser import HeaderParser
conn = imaplib.IMAP4_SSL('imap.gmail.com')
conn.login('example@gmail.com', 'password')
conn.select()
conn.search(None, 'ALL')
data = conn.fetch('1', '(BODY[HEADER])')
header_data = data[1][0][1].decode('utf-8')

这时我收到了错误信息:

AttributeError: \'str\' object has no attribute \'decode\'

Python 3不再有str.decode(),那么我该如何解决这个问题?

admin 更改状态以发布 2023年5月24日
0
0 Comments

如果您在PyJWT v2.0.0发布后(2020年12月22日)使用jwt身份验证进入此处,则可能希望在您的requirements.txt文件中将PyJWT的版本冻结到上一个版本。

PyJWT==1.7.1

0
0 Comments

您正在尝试解码一个已经解码的对象。您有一个str,不再需要从UTF-8解码。

只需删除.decode('utf-8')部分:

header_data = data[1][0][1]

0