gpt4 book ai didi

Python Gmail Api Base64 解码电子邮件正文中的奇怪字符

转载 作者:行者123 更新时间:2023-12-02 01:58:53 25 4
gpt4 key购买 nike

我正在使用 Gmail API 从收件箱检索电子邮件:

query = 'to:me after:{}'.format(weekStartDate)

unreadEmailsQuery = service.users().messages().list(userId='me', q=query).execute()

# For Each Email
for message in unreadEmailsQuery['messages']:
result = service.users().messages().get(id=message['id'],userId='me').execute()
email_content = ''

if 'data' in result['payload']['body'].keys():
email_content+= result['payload']['body']['data']
else:

for part in result['payload']['parts']:
email_content = part['body']['data'] + email_content



test = bytes(str(email_content),encoding='utf-8')
print(base64.decodebytes(test))

正确打印简单的纯文本消息:

b'我还有一个

但是打印出这样的 html 消息:

b'<body\x03B\x83B\x83B\x83B\x88\x08\x0f\x1bY]\x18H\x1a\x1d\x1d\x1c\x0bY\\]Z]\x8fH\x90\xdb\

我可以看到一切正常,直到字符串的第一个 > 被错误地打印出来,我不知道为什么。

我正在尝试从电子邮件中提取单词,以便可以训练分类器,但我陷入困境。

任何帮助将不胜感激。

最佳答案

我需要使用 URl 安全 Base64 解码。

我设法通过更改最后一行来使其工作:

print(base64.decodebytes(test))

至:

print(base64.urlsafe_b64decode(test))

关于Python Gmail Api Base64 解码电子邮件正文中的奇怪字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46352216/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com