xmlrpc newPaste - un objet prévu à l'interface de la mémoire tampon
-
25-10-2019 - |
Question
py2 il y avait
rv = xmlrpc.pastes.newPaste(language, code, None, filename, mimetype, private)
J'obtiens erreur: prévu un objet avec l'interface tampon
Impossible de trouver des documents sur xmlrpc et PY3. Je trouve que cet extrait:
p1 = subprocess.Popen(['gpg','--clearsign'], stdin = subprocess.PIPE, stdout=subprocess.PIPE)
p1.stdin.write(bytes(input, 'UTF8'))
output = p1.communicate()[0]
s = ServerProxy('http://paste.pocoo.org/xmlrpc/')
pasteid = s.pastes.newPaste('text',output.decode())
print ("http://paste.pocoo.org/raw/",pasteid,"/", sep="")
mais je suis toujours en confus à ce sujet ... ma version utilisée de nombreux arguments, où puis-je trouver la description complète de celui-ci / fix pour cela?
Merci.
La solution
Ce message d'erreur signifie généralement qu'il cherche str
(qui est Unicode en Python 3), non bytes
. Comme dans l'exemple, vous aurez besoin de décoder l'argument qui est en octets. Peut-être:
rv = xmlrpc.pastes.newPaste(language, code.decode(), None, filename, mimetype, private)
Mais il est difficile de dire quel est le problème sans voir votre code.
Autres conseils
python 3. xmlrpclib
a été divisé en deux modules, xmlrpc.client
et xmlrpc.server
.
Les documents pour 3.2.1 est disponible à:
http://docs.python.org/release/ 3.2.1 / bibliothèque / xmlrpc.client.html
http://docs.python.org/release/ 3.2.1 / bibliothèque / xmlrpc.server.html