发布到Wordpress博客时出现xmlrpclib错误

时间:2012-11-17 22:18:45

标签: python wordpress xmlrpclib

几周前我编写了一个Python脚本,它将一些内容发布到Wordpress博客,但是自从上周它停止工作(我没有改变任何东西),现在当我运行脚本时,我得到了这个错误:

File "C:\Python27\lib\xmlrpclib.py", line 557, in feed
    self._parser.Parse(data, 0)
ExpatError: junk after document element: line 2, column 0

我用来将所需内容发布到Wordpress的功能是:

post_id = server.wp.newPost(blog_id, user, passw, content)

它曾经工作过,因为它开始崩溃(显然)没有理由。

¿你现在可能是造成这个错误的原因吗?¿我的Wordpress可能已经被感染了(我已经检查过了)?

谢谢,如果您需要更多代码来检查我会发布的内容,并抱歉我的英语不好。

重要编辑: 之前我没有提到过,但是这个脚本与其他wordpress博客完美配合,当我尝试发布到WP博客时我只是崩溃了(这就是为什么我认为该网站可能被感染了)。

当代码有效时,data中使用的变量self._parser.Parse(data, 0)具有以下内容:

<?xml version="1.0"?>
<methodResponse>
  <params>
    <param>
      <value>
      <string>90</string>
      </value>
    </param>
  </params>
</methodResponse>

<?xml version="1.0"?>
<methodResponse>
  <params>
    <param>
      <value>
      <int>90</int>
      </value>
    </param>
  </params>
</methodResponse>

修改: 数据变量是由库使用的,我不知道它应该包含什么但是debuggin我发现当脚本崩溃时它有这样的内容:

<br />
<b>Warning</b>:  strpos() [<a href='function.strpos'>function.strpos</a>]: Empty delimiter in <b>/PATH/wp-includes/class-wp-xmlrpc-server.php</b> on line <b>3954</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already sent by (output started at /PATH/wp-includes/class-wp-xmlrpc-server.php:3954) in <b>/PATH/wp-includes/class-IXR.php</b> on line <b>471</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already sent by (output started at /PATH/wp-includes/class-wp-xmlrpc-server.php:3954) in <b>/PATH/wp-includes/class-IXR.php</b> on line <b>472</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already sent by (output started at /PATH/wp-includes/class-wp-xmlrpc-server.php:3954) in <b>/ANOTHER_PATH/public_ht

正如我所说,我不知道'数据'应包含什么,当代码工作时,我从未检查过它的内容是什么。

0 个答案:

没有答案