Я создал документ с использованием DOCX и попытался отправить в качестве вложения электронной почты без сохранения документа на сервере. Ниже мой код:
Document = document() paragraph = document.add_paragraph("Test Content") f = BytesIO() document.save(f) file_list = [] file_list.append(["Test.docx",f, "application/vnd.openxmlformats-officedocument.wordprocessingml.document"] email = EmailMessage(subject = 'Test', body = 'Hi', to = ['test@test.com'], attachments = file_list) email.send()
Я получаю следующую ошибку:
TypeError: ожидаемый байт-подобный объект, а не Bytesio
на линии email.send ()
Я пытался преобразовать байтозио в Stringio, как упомянуто здесь
f = f.read() f = StringIO(f.decode('UTF-8'))
А потом я получаю ошибку:
TypeError: ожидаемый байт-подобный объект, а не Stringio
Я посмотрел на решение от это , но не понял, как Документ
отправлен в качестве вложения.
Любая помощь или указатели ценится.
Спасибо!
Оригинал: “https://dev.to/bharathbk/create-a-document-using-python-docx-and-send-as-attachment-through-django-11ko”