如何将Excel文件编码为base64

时间:2019-02-08 06:59:09

标签: python pandas encoding base64

我需要使用SendGrid从我的应用程序发送电子邮件。我已经在sendgrid中制作了交易模板,现在需要将excel附加到发出的电子邮件中。

根据其Web API V3文档,可以通过在Base64中对文件进行编码来添加附件。我尝试过寻找在Base64中对文件进行编码的解决方案,但找不到解决方案。据我对base64包的了解,它只能编码类似字节的对象。

那么,在编码之前,是否需要将excel文件读入类似字节的对象中?是否有一个软件包可以为我神奇地做到这一点?

我的应用程序当前使用熊猫to_excel()方法生成excel文件。

预先感谢:)

[更新1] 我已经检查了这个问题,是否我的可以重复,但是该问题以String形式返回文件,但是要进行Base64编码,我需要一个类似字节的对象来对excel文件进​​行编码。

我确实尝试了该问题中提供的解决方案,但是它没有用,因为最终的返回结果是字符串。

1 个答案:

答案 0 :(得分:0)

要将Excel文件编码为base64,请尝试

import base64

data = open(excel_path, 'rb').read()
base64_encoded = base64.b64encode(data).decode('UTF-8')