Как base64 кодировать PDF-файл в Python
Как я должен base64 кодировать PDF-файл для транспорта через XML-RPC в Python?
5 ответов
Примечание: это копия ответа Пэта Нотца, принадлежащая сообществу wiki. Этот ответ можно выбрать в качестве выбранного ответа. Редактируйте свободно, чтобы улучшить.
Пэт Нотц говорит:
на самом деле, после еще нескольких раскопок, это выглядит как xmlrpclib
модуль может иметь кусок, который мне нужен с его Binary
вспомогательный класс:
binary_obj = xmlrpclib.Binary( open('foo.pdf').read() )
вот пример Trac XML-RPC документация
import xmlrpclib
server = xmlrpclib.ServerProxy("http://athomas:password@localhost:8080/trunk/login/xmlrpc")
server.wiki.putAttachment('WikiStart/t.py', xmlrpclib.Binary(open('t.py').read()))
Если вы не хотите использовать двоичный класс xmlrpclib, вы можете просто использовать .метод encode () строк:
a = open("pdf_reference.pdf", "rb").read().encode("base64")
на самом деле, после еще нескольких раскопок, это выглядит как xmlrpclib
модуль может иметь кусок, который мне нужен с ним Binary
вспомогательный класс:
binary_obj = xmlrpclib.Binary( open('foo.pdf').read() )
вот пример Trac XML-RPC документация
import xmlrpclib
server = xmlrpclib.ServerProxy("http://athomas:password@localhost:8080/trunk/login/xmlrpc")
server.wiki.putAttachment('WikiStart/t.py', xmlrpclib.Binary(open('t.py').read()))
вы можете сделать это с помощью тега в base64 библиотека, устаревший интерфейс.
Похоже, вы можете использовать binascii модуль
binascii.b2a_base64 (data)
преобразование двоичных данных в строку символов ASCII в кодировке base64. Возвращаемое значение-это преобразованная строка, включая символ новой строки. Длина данных должна быть не более 57, чтобы соответствовать стандарту base64.