Python—PDF、WORD和Base64互转
PDF转Base64
import base64
path = "xxxx.pdf"
with open(path, "rb") as pdf_file:
encoded_string = base64.b64encode(pdf_file.read())
encoded_string
Base64转PDF
import base64
path = "xxxx.pdf"
with open(path, 'wb') as f:
f.write(base64.b64decode(encoded_string))
整合
import base64
def pdf_to_base64(pdf_path):
"""
将pdf转为Base64流
:param pdf_path: PDF文件路径
:return:
"""
with open(pdf_path, "rb") as pdf_file:
encoded_string = base64.b64encode(pdf_file.read())
return encoded_string
def base64_to_pdf(base64_data, pdf_save_path):
"""
将 base64流 转为PDF
:param base64_data: base64流
:param pdf_save_path: PDF保存路径
:return:
"""
with open(pdf_save_path, 'wb') as f:
f.write(base64.b64decode(base64_data))
if __name__ == '__main__':
pdf_path = "../data/pdfdemo.pdf"
base64code = pdf_to_base64(pdf_path)
# print(base64code)
pdf_save_path = "../data/pdf_save.pdf"
base64_to_pdf(base64code, pdf_save_path)
Word转Base64
import base64
def word_to_base64(word_path):
"""
将word转为Base64流
:param word_path: Word文件路径
:return:
"""
with open(word_path, "rb") as word_file:
encoded_string = base64.b64encode(word_file.read())
return encoded_string
def base64_to_word(base64_data, word_save_path):
"""
将 base64流 转为 Word
:param base64_data: base64流
:param word_save_path: Word保存路径
:return:
"""
with open(word_save_path, 'wb') as f:
f.write(base64.b64decode(base64_data))
if __name__ == '__main__':
file_path = "xxxx.docx"
base64code = word_to_base64(file_path)
print(base64code)
word_save_path = "xxxx.docx"
base64_to_word(base64code, word_save_path)