2010-12-13 19 views
1

J'essaie d'envoyer une requête ping à Pingomatic en utilisant python.Erreur lors de l'exécution d'un ping sur Pingomatic (XMLRPC) en utilisant python

J'ai écrit ceci:

import xmlrpclib 

print "START" 

s = xmlrpclib.Server('http://rpc.pingomatic.com') 
reply = s.weblogUpdates.ping('Test','http://www.testblog.com') 

print "END" 

Mais quand je cours, je reçois:

>>> 
START 

Traceback (most recent call last): 
    File "C:/xxxxxxxxxxxxxxxxxx/pingtest1.py", line 6, in <module> 
    reply = j.weblogUpdates.ping('Test','http://www.testblog.com') 
    File "C:\Python27\lib\xmlrpclib.py", line 1224, in __call__ 
    return self.__send(self.__name, args) 
    File "C:\Python27\lib\xmlrpclib.py", line 1570, in __request 
    verbose=self.__verbose 
    File "C:\Python27\lib\xmlrpclib.py", line 1264, in request 
    return self.single_request(host, handler, request_body, verbose) 
    File "C:\Python27\lib\xmlrpclib.py", line 1297, in single_request 
    return self.parse_response(response) 
    File "C:\Python27\lib\xmlrpclib.py", line 1462, in parse_response 
    p.feed(data) 
    File "C:\Python27\lib\xmlrpclib.py", line 557, in feed 
    self._parser.Parse(data, 0) 
ExpatError: syntax error: line 1, column 0 
>>> 

Comment puis-je résoudre ce problème?

Merci.

+0

Peut-être 's = xmlrpclib.Server ('http://rpc.weblogs.com/RPC2')'? – khachik

+0

@khachik cela fonctionne avec les weblogs, mais pas avec pingomatic –

+0

'ExpatError: erreur de syntaxe: ligne 1, colonne 0' signifie qu'il n'a pas reçu de réponse XML (ou de réponse). Vous voudrez peut-être vérifier l'API de pingomatic. – khachik

Répondre

1

Il s'est avéré que c'était un problème avec le format de réponse de Pingomatic. J'ai essayé de ping Weblogs.com, et cela a fonctionné très bien.

J'ai envoyé un courriel à Automattic pour les informer, et ils ont corrigé le problème depuis - tout devrait fonctionner!