10

PythonでXML-RPC経由で転送するためにPDFファイルをbase64でエンコードするにはどうすればよいですか?

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 文字列に変換します。戻り値は、改行文字を含む変換された行です。base64 標準に準拠するには、データの長さは最大 57 にする必要があります。

于 2008-10-16T15:13:02.990 に答える