10

我应该如何对 PDF 文件进行 base64 编码,以便在 Python 中通过 XML-RPC 进行传输?

4

4 回答 4

25

如果不想使用 xmlrpclib 的 Binary 类,可以只使用字符串的 .encode() 方法:

a = open("pdf_reference.pdf", "rb").read().encode("base64")
于 2008-10-16T22:33:24.380 回答
5

实际上,经过更多挖掘,看起来该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())) 
于 2008-10-16T15:09:33.887 回答
2

您可以使用base64 库、遗留接口来实现。

于 2008-10-16T15:08:49.067 回答
0

看起来你也许可以使用binascii模块

binascii.b2a_base64(数据)

将二进制数据转换为 base64 编码中的一行 ASCII 字符。返回值是转换后的行,包括换行符。数据长度最多应为 57 以符合 base64 标准。

于 2008-10-16T15:13:02.990 回答